<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>2inc.org</title>
	<atom:link href="http://2inc.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://2inc.org</link>
	<description></description>
	<lastBuildDate>Fri, 03 Sep 2010 18:26:43 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>WordPressで外部RSSフィードを取得し表示する方法</title>
		<link>http://2inc.org/blog/blog/501/</link>
		<comments>http://2inc.org/blog/blog/501/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:25:57 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=501</guid>
		<description><![CDATA[
自分のはてなブックマークのフィードを表示したいなと思いググる。

MagpieRSSを使う

なんとWordpressにはMagpieRSSが入っているとのこと。下記のような感じでフィードが取得できる。

[php]
include_once(ABSPATH . WPINC . &#038; &#8230; <a href="http://2inc.org/blog/blog/501/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
自分のはてなブックマークのフィードを表示したいなと思いググる。
</p>
<h3>MagpieRSSを使う</h3>
<p>
なんとWordpressには<a href="http://magpierss.sourceforge.net/">MagpieRSS</a>が入っているとのこと。下記のような感じでフィードが取得できる。
</p>
[php]
include_once(ABSPATH . WPINC . &#8216;/rss.php&#8217;);
$rss = fetch_rss( フィードURL );
[/php]
<p>
あとは取得したデータを適当に加工して表示すれば良い。コード書くのが少し煩わしいけど一番自由度は高いかと。
</p>

<h3>wp_rss()、get_rss()を使う</h3>
<p>
WordpressにはRSSを取得し表示する関数が標準で備わっているとのこと。<br />
使い方は以下の通り。
</p>
[php]
include_once(ABSPATH . WPINC . &#8216;/rss.php&#8217;);
wp_rss( フィードURL , 件数 );
get_rss( フィードURL , 件数 );
[/php]
<p>
<a href="http://codex.wordpress.org/Function_Reference/wp_rss">wp_rss</a>は&lt;ul&gt;と&lt;li&gt;を出力、<a href="http://codex.wordpress.org/Function_Reference/get_rss">get_rss</a>は&lt;li&gt;のみ出力。
</p>

<h3>ウィジェットを使う</h3>
<p>
wp_rssでフィードを取得し一件落着。悦に浸りながら管理画面をながめていると
</p>
<p>
<img src="http://2inc.org/wp-content/uploads/2010/09/rss.gif" alt="RSS" /></a>
</p>
<p>
ん・・・・！？ウィジェットがあるではないか！<br />
しかもフィードURLを入力するだけでOK。テンプレートがウィジェットに対応している必要があるのでそこだけ注意です。
</p>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/501/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>メニューの画像を切り替えるjqueryプラグイン</title>
		<link>http://2inc.org/blog/blog/416/</link>
		<comments>http://2inc.org/blog/blog/416/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 16:49:59 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=416</guid>
		<description><![CDATA[概要

自分が今みているカテゴリを判別し、自動的にナビゲーションの画像を反転させるjqueryプラグインです。各カテゴリごとに、そのカテゴリに応じたナビゲーションのメニューを反転させる場合が多いと思いますが、手動で各ページごとにclass振ったりするの手間ですよね。そこでnavi_rollove &#8230; <a href="http://2inc.org/blog/blog/416/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h3>概要</h3>
<p>
自分が今みているカテゴリを判別し、自動的にナビゲーションの画像を反転させるjqueryプラグインです。各カテゴリごとに、そのカテゴリに応じたナビゲーションのメニューを反転させる場合が多いと思いますが、手動で各ページごとにclass振ったりするの手間ですよね。そこで<a href='http://2inc.org/wp-content/uploads/2010/07/navi_rollover.js'>navi_rollover</a>の登場！
</p>
<h3>使い方</h3>
<p>
<a href="http://jquery.com/">jquery</a>と<a href='http://2inc.org/wp-content/uploads/2010/07/navi_rollover.js'>navi_rollover</a>をダウンロードし、head要素内に読み込みます。
</p>
[html]
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/navi_rollover.js"></script>
[/html]
<p>
ナビゲーションを記述します。<br />
ここで、いくつか守らないと行けないルールがありますのでご注意ください。<br />
※ロールオーバー前の画像を「画像名_n.hoge」、ロールオーバー画像を「画像名_r.hoge」とます。<br />
※リンク先URLは「/」もしくは「/ファイル名」。<br />
※各ページはトップページ以下のディレクトリに設置。<br />
※トップページ直下のディレクトリ名に反応します。
</p>
[html]
<div id="GlobalNavigation">
  <ul>
    <li><a href="/"><img src="images/common/gnav/top_n.gif" alt="" /></a></li>
    <li><a href="about/"><img src="images/common/gnav/about_n.gif" alt="" /></a></li>
    <li><a href="blog/"><img src="images/common/gnav/blog_n.gif" alt="" /></a></li>
    <li><a href="contact/"><img src="images/common/gnav/contact_n.gif" alt="" /></a></li>
  </ul>
<!-- end #GlobalNavigation --></div>
[/html]
<p>
サイト構造にあわせてnavi_rollover.jsを書き直します。
</p>
[javascript]
//トップページURL
var $topurl=&#8217;/';
//ルートディレクトリを指定します。トップページがhttp://hogehoge.com/hoge/だったら、「/hoge/」

// #GlobalNavigationに含まれるリンクを取得
var $navArr = $(&#8216;#GlobalNavigation ul li a:has(img)&#8217;);
//#GlobalNavigation ul liの部分を適宜変更してください。
[/javascript]]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/416/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>指定時間ごとに処理を繰り返すlinuxコマンド</title>
		<link>http://2inc.org/blog/blog/414/</link>
		<comments>http://2inc.org/blog/blog/414/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 07:56:53 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[コマンド]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=414</guid>
		<description><![CDATA[
while :;do clear;コマンド;sleep1;done


httpdプロセスを１秒ごとに表示する場合は

[c]while :;do clear;ps ax &#124; grep httpd &#124; wc -l ;sleep1;done[/c]]]></description>
			<content:encoded><![CDATA[<p>
while :;do clear;コマンド;sleep1;done
</p>
<p>
httpdプロセスを１秒ごとに表示する場合は
</p>
[c]while :;do clear;ps ax | grep httpd | wc -l ;sleep1;done[/c]]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/414/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apacheの帯域制限 mod_bw</title>
		<link>http://2inc.org/blog/blog/410/</link>
		<comments>http://2inc.org/blog/blog/410/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 01:40:03 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[apache]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=410</guid>
		<description><![CDATA[
トラフィック量の関係から、Apacheで帯域制限をかけたい事案があり、調査。
mod_bwというモジュールで比較的簡単に制限できるらしい。


早速配布元からダウンロード。最新版は0.91ですね。
解凍後、下記コマンドで自動的に組み込まれます。

/usr/sbin/apxs ./ &#8230; <a href="http://2inc.org/blog/blog/410/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
トラフィック量の関係から、Apacheで帯域制限をかけたい事案があり、調査。<br />
mod_bwというモジュールで比較的簡単に制限できるらしい。
</p>
<p>
早速<a href="http://ivn.cl/apache/#bandwidth">配布元</a>からダウンロード。最新版は0.91ですね。<br />
解凍後、下記コマンドで自動的に組み込まれます。
</p>
<pre><code>/usr/sbin/apxs ./mod_bw.c
service httpd reload</code></pre>
<p>
ふむふむ。
</p>
<pre><code>～略～undefined symbol: ap_get_server_banner</code></pre>
<p>
（ ﾟдﾟ）
</p>
<p>
どうやらApache2.2.4以上でないとダメらしい。<br />
参考：<a href="http://oshiete.goo.ne.jp/qa/3962582.html">http://oshiete.goo.ne.jp/qa/3962582.html</a>
</p>
<p>
うーん、どうしたものか・・・試しに0.7をダウンロードしてインストールしてみたところ・・成功！yumでは現在使用中のApache2.2.3が最新みたいなので、mod_bw0.7で様子見。
</p>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/410/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ボックスを横並びにしたときの最端の余白をなんとかする</title>
		<link>http://2inc.org/blog/blog/404/</link>
		<comments>http://2inc.org/blog/blog/404/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 01:52:53 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=404</guid>
		<description><![CDATA[
画像と画像の間に25pxの余白を持たせた形で横並び（float:left）。普通なら3つめの画像の右余白の25pxが邪魔してカラム落ち。それを防ぐために.rightとかclass振りますが、メンドクサイので無理やりなんとかしてみましょー。（動作未確認。）


html

[html] &#8230; <a href="http://2inc.org/blog/blog/404/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
画像と画像の間に25pxの余白を持たせた形で横並び（float:left）。普通なら3つめの画像の右余白の25pxが邪魔してカラム落ち。それを防ぐために.rightとかclass振りますが、メンドクサイので無理やりなんとかしてみましょー。（動作未確認。）
</p>

<h3>html</h3>

[html]
&lt;div id=&quot;productList&quot;&gt;

	&lt;ul&gt;
		&lt;li&gt;&lt;img src=&quot;hoge.jpg&quot; alt=&quot;画像&quot; /&gt;&lt;/li&gt;
		&lt;li&gt;&lt;img src=&quot;hoge.jpg&quot; alt=&quot;画像&quot; /&gt;&lt;/li&gt;
		&lt;li&gt;&lt;img src=&quot;hoge.jpg&quot; alt=&quot;画像&quot; /&gt;&lt;/li&gt;
		&lt;li&gt;&lt;img src=&quot;hoge.jpg&quot; alt=&quot;画像&quot; /&gt;&lt;/li&gt;
	&lt;/ul&gt;

&lt;!&#8211; end #productList &#8211;&gt;&lt;/div&gt;
[/html]

<h3>css</h3>

[css]
#productList｛
	width:800px;
}
#productList img｛
	width:250px;
}
#productList ul{
	list-style:none;
	margin:0 -25px 0 0;
	padding:0;
	zoom:1; /* ie */
}
#productList ul li{
	float:left;
	margin:0 25px 0 0;
	padding:0 0 15px 0;
}

/*&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-
clearfix
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-*/
#productList:after{
	content:&#8221;.&#8221;;
	height:0;
	clear:both;
	display:block;
	visibility:hidden;
	font-size:0;
	line-height:0;
}

#productList{
	display:inline-block;
}

/* exlude MacIE5 \*/
* html #productList{
	height:1%;
}

#productList{
	display:block;
}
/* end MacIE5 */
[/css]]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/404/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>特定の属性を持ち、特定の子要素を持たない要素を選択するjqueryセレクタ</title>
		<link>http://2inc.org/blog/blog/402/</link>
		<comments>http://2inc.org/blog/blog/402/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 09:49:20 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=402</guid>
		<description><![CDATA[
要素[属性='属性値']:not(:has(&#8216;要素2&#8242;))
]]></description>
			<content:encoded><![CDATA[<p>
要素[属性='属性値']:not(:has(&#8216;要素2&#8242;))
</p>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/402/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpにおける文字列比較でハマる</title>
		<link>http://2inc.org/blog/blog/397/</link>
		<comments>http://2inc.org/blog/blog/397/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 16:14:36 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=397</guid>
		<description><![CDATA[

 数値として文字列が評価された時、結果の値と型は次のように定義されます。


文字列の中に &#8216;.&#8217; や &#8216;e&#8217;、&#8217;E&#8217; といった文字が含まれず、 数値が integer 型の範囲内 (PHP_INT_MAX で定義されていま &#8230; <a href="http://2inc.org/blog/blog/397/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<blockquote>
<p>
 数値として文字列が評価された時、結果の値と型は次のように定義されます。
</p>
<p>
文字列の中に &#8216;.&#8217; や &#8216;e&#8217;、&#8217;E&#8217; といった文字が含まれず、 数値が integer 型の範囲内 (PHP_INT_MAX で定義されています) におさまる場合は integer として評価されます。それ以外の場合は、すべて float として評価されます。
</p>
<p>
文字列の最初の部分により値が決まります。文字列が、 有効な数値データから始まる場合、この値が使用されます。その他の場合、 値は 0 (ゼロ) となります。
</p>
<p>
<a href="http://www.php.net/manual/ja/language.types.string.php#language.types.string.conversion">http://www.php.net/manual/ja/language.types.string.php#language.types.string.conversion</a>
</p>
</blockquote>
<p>
phpは数値と文字列が比較された場合、文字列は「0」として扱われるんだと。普通に考えて「0==文字列」で比較してtrueになるなんて思わねぇだろ＼(^o^)／
</p>
<p>
文字列として比較する場合は、「strcmp($str1,$str2)」を使った方が無難。
</p>
<h3>参考</h3>
<ul>
<li><a href="http://d.hatena.ne.jp/fbis/20071110/1194680712">PHPにおける文字列比較の2a問題</a>(<a href="http://d.hatena.ne.jp/fbis/">Unknown::Programming</a>)</li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/397/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTTPS通信時、IEでCSVファイルがダウンロードできない件</title>
		<link>http://2inc.org/blog/blog/390/</link>
		<comments>http://2inc.org/blog/blog/390/#comments</comments>
		<pubDate>Sat, 01 Aug 2009 01:06:41 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=390</guid>
		<description><![CDATA[
phpでDBからCSVファイルを生成、submit押したらダウンロードという単純なプログラムを作成したんだけど、なぜかIEでだけダウンロードできない。またIEかよと。


調べてみたところ、どうやらCache関係でいろいろあるらしい。



no-cache指定されていると発生するようです。


 &#8230; <a href="http://2inc.org/blog/blog/390/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
phpでDBからCSVファイルを生成、submit押したらダウンロードという単純なプログラムを作成したんだけど、なぜかIEでだけダウンロードできない。またIEかよと。
</p>
<p>
調べてみたところ、どうやらCache関係でいろいろあるらしい。
</p>
<blockquote>
<p>
no-cache指定されていると発生するようです。
</p>
<p>
なんとなく意味がわかりました。IEだとページ閲覧もダウンロードもすべてtemporary Internet filesフォルダへいったん保存されます。保存されたデータは、no-cache指定されていると、即削除されるため、ダウンロードの場合の、
</p>
<p>
ダウンロード→temporary→指定フォルダ
</p>
<p>
この流れが実現できないためかと思われます。ダウンロード→temporaryこの時点で削除されてしまうため。
</p>
<p>
PHPで、これを回避するには、cacheするように設定することで対応可能です。
</p>
<p>
<a href="http://www.gcblog.net/tips/2009/01/phpcsvsslie.php">PHPでCSVファイルのダウンロード(SSL+IE)</a>（<a href="http://www.gcblog.net/tips/">Tips for Programing</a>）
</p>
</blockquote>
<p>
実際にheader情報を確認してみると、確かに
</p>
<p>
Cache-Control: no-cache<br />
Pragma: no-cache
</p>
<p>
とあるのを発見。まぁ冷静に考えてみれば、SSLなんだからこのようなCache設定になってるのは当たり前か。<br />
てことなんだけど、以下のような情報も発見。
</p>
<blockquote>
<p>
IE6 の場合、アクセスしたページの HTML ファイル本体とそのファイルで指定してあった css ファイルが一時フォルダにキャッシュされることが確認できた。ブラウザを閉じても、これらのファイルは残されたままだった。サイトの設計によっては、このキャッシュファイルの中にクレジットカード情報などが入っていることになるかも知れない。ちょっと恐ろしい仕様だと思われた。サーバー側でがんばって no-cache ヘッダを出すとか、対策をする必要があるだろう。
</p>
<p>
ff3 の場合、アクセスしたページの HTML ファイル本体とそのファイルで指定してあった css ファイルがメモリにキャッシュされた。ブラウザを閉じたらこれらのキャッシュは消えてしまった。後から出たブラウザだからこうなっているのかも知れない。キャッシュもきいて、センシティブな一時ファイルも残らない、バランスの取れた実装だと思った。
</p>
<p>
<a href="http://kzworks.at.webry.info/200902/article_33.html">SSL と キャッシュの微妙な関係 </a>（<a href="http://kzworks.at.webry.info/">民芸的プログラミング　〜ソフトウェア開発日記〜</a>）
</p>
</blockquote>
<p>
IE・・・orz<br />
今度実験してみよう。
</p>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/390/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jqueryでカテゴリごとにメニューの画像を切り替えるTips 2</title>
		<link>http://2inc.org/blog/blog/359/</link>
		<comments>http://2inc.org/blog/blog/359/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 16:49:41 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=359</guid>
		<description><![CDATA[
以前にも一度書いてますが、汎用性0で非常に使いにくいものだったので、再度組み直し。良くわからないまま組んだけど、とりあえず動いているっぽいので公開します。

[javascript]
/*========================================

gnav画像を &#8230; <a href="http://2inc.org/blog/blog/359/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
以前にも<a href="http://2inc.org/blog/28.html">一度書いてます</a>が、汎用性0で非常に使いにくいものだったので、再度組み直し。良くわからないまま組んだけど、とりあえず動いているっぽいので公開します。
</p>
[javascript]
/*========================================

gnav画像を反転させるjquery plugin

========================================*/

function globalNaviCurrent() {
	var url = location.pathname
	var directory = url.split(&#8220;/&#8221;);

	if(directory[1]==&#8221;){
		var currentDirectory = &#8220;/&#8221;;
	}else if(directory[1]==&#8217;category&#8217;){
		var currentDirectory = directory[2];
	}else{
		var currentDirectory = directory[1];
	}
	var currentA = $(&#8216;#header #GlobalNavigation ul li a[@href$=' + currentDirectory + '] img&#8217;);

	if(imgsrc = currentA.attr(&#8220;src&#8221;)){
		var kugiri = imgsrc.split(&#8220;_n&#8221;,2);
		var imgsrcCurrent = kugiri[0] + &#8220;_r&#8221; + kugiri[1];
		currentA.attr({ src: imgsrcCurrent });
	}
};
$(document).ready(globalNaviCurrent);
[/javascript]
<p>
ルートの直後の階層のパスを取得して判別します（「http://2inc.org/web/html」だったら「web」）。一応wordpress用ってことで、カテゴリーページには「category」というパスが入るようだったので、その判別入れてます。
</p>
<p>
サイトに会わせて書き換えないといけないのは「currentA」に渡す画像の階層の部分。あとは_nという画像と_rという画像を用意してそれを反転させてます。
</p>
<h3>参考</h3>
<ul>
<li><a href="http://web.dimension-maker.info/archives/2008/04/11163810.html">JSでナビゲーションをハイライトさせる</a>(<a href="http://web.dimension-maker.info/">web dimension maker</a>
)</li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/359/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>名前ベースのバーチャルホストでSSL</title>
		<link>http://2inc.org/blog/blog/357/</link>
		<comments>http://2inc.org/blog/blog/357/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 23:44:34 +0000</pubDate>
		<dc:creator>inc</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[VirtualHost]]></category>

		<guid isPermaLink="false">http://2inc.org/?p=357</guid>
		<description><![CDATA[
IP ベースのバーチャルホストでは、応答する バーチャルホストへのコネクションを決定するために IPアドレスを使用します。ですから、それぞれのホストに個々に IPアドレスが必要になります。これに対して名前ベースのバーチャルホストでは、クライアントが HTTP ヘッダの一部としてホスト名を告げる、  &#8230; <a href="http://2inc.org/blog/blog/357/">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<blockquote><p>
IP ベースのバーチャルホストでは、応答する バーチャルホストへのコネクションを決定するために IPアドレスを使用します。ですから、それぞれのホストに個々に IPアドレスが必要になります。これに対して名前ベースのバーチャルホストでは、クライアントが HTTP ヘッダの一部としてホスト名を告げる、 ということに依存します。この技術で同一 IP アドレスを異なる多数のホストで共有しています。</p>

<p>名前ベースのバーチャルホストは通常単純で、それぞれのホスト名とそれに対応する正確な IP アドレスを DNS で設定し、異なるホスト名を区別するように Apache HTTP サーバを設定するだけです。さらに、名前ベースのバーチャルホストは不足する IPアドレスの需要を緩和します。したがって、IP ベースのバーチャルホストを選択すべき特定の理由がなければ名前ベースのバーチャルホストを使うべきです。IP ベースのバーチャルホストを使用することを考慮する理由として、</p>

<ul>
<li>名前ベースのバーチャルホストに対応していない古いクライアントがある名前ベースのバーチャルホストが働くためには、クライアントはHTTP ホストヘッダを送ってこなければなりません。 これは HTTP/1.1 の仕様で要求されていて、すべての現代的なHTTP/1.0 ブラウザでも拡張として実装されています。とても古いクライアントをサポートしつつ、名前ベースのバーチャルホストを行いたい場合は、この文書の最後の方に書かれている解決策になるかもしれない方法を見てください。</li>
<li>名前ベースのバーチャルホストは SSL プロトコルの特徴により、SSL セキュアサーバには使えません。</li>
<li>オペレーティングシステムやネットワーク装置のなかには、別の IP アドレス上でない場合、複数のホストを別扱いできないような帯域管理の方法を実装しているものがあります。</li>
</ul>
<p>
<a href="http://httpd.apache.org/docs/2.0/ja/vhosts/name-based.html">名前ベースのバーチャルホスト</a>
</p>
</blockquote>
<p>
できないらしい。見事にはまってしまったではないかorz
</p>

<blockquote>
<p>ちなみにバーチャルホストに https で接続要求を行うと、httpd.conf のServerNameで指定したサーバー自身のドキュメントルートを返すため、フルアクセス、つまりhttpをhttpsと置き換えて利用できるhttpsサーバーとしては使う事は出来ないということであり、バーチャルドメインでのSSL運用が出来無いと言う訳ではありません。言葉足らずだったのでこの辺を補足します。</p>
<p>特定のディレクトリに存在する掲示板など、通常のドキュメントルート下に設置できるのであれば、特定ディレクトリでのSSL暗号化保護においてバーチャルドメインによる運用は可能です。例えば、以下の様になります。</p>
<p>httpsでバーチャルドメインに接続した場合、ServerNameで指定した通常のドキュメントルートを返します。つまり、/aaa/というディレクトリを同一ディレクトリです。 </p>
<div>
	<p>https://VirtualDomain.com/aaa/ = https://ServerName.com/aaa/</p>
</div>

<p>ディレクトリ/aaa/をバーチャルドメイン、VirtualDomain.com の専用掲示板としてServerName.comのドキュメントルートに設置できるのであれば、SSLの保護に関してはバーチャルドメインによる運用は可能です。</p>
<p>ただし、クライアント認証などは、ServerName.comのサーバー証明書との兼ね合いで制限が出てくると思います。試してません。SSLによる保護は行えますので第三者から通信の盗聴を防ぐ目的は達成されます。</p>
<p>
<a href="http://safe-linux.homeip.net/web/linux-VirtualHost-03.html">名前ベースのバーチャルホストの欠点</a>
</p>
</blockquote>
<p>
あれ？できるのか？じゃあapacheの設定が悪かったのか…。
</p>]]></content:encoded>
			<wfw:commentRss>http://2inc.org/blog/blog/357/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
