サーバー

Apache 2.2.15 VirtualHostの設定

Apache 2.2.15、PHP 5.3.2 で、バーチャルホストを設定して WordPress 動作させようとした際、ちょっと躓いたのでその覚書です。

ルートディレクトリが「www.example.com」で、バーチャルホスト「www.example.com」を設定する際の httpd.conf と extra/httpd-vhosts.conf の設定について。

httpd.conf
extra/httpd-vhosts.conf の読み込み指示がコメントアウトされているので、有効にする。

URIにファイル名が指定されなかった場合のデフォルト指定で、<IfModule dir_module> の DirectoryIndex に、index.php を追加する。セパレータは空白でOK。

httpd-vhost.conf

<VirtualHost *:80>
	ServerAdmin webmaster@www.example.com
	DocumentRoot "D:/httpd/www/htdocs"
	ServerName www.example.com
	ErrorLog "D:/httpd/www/logs/error.log"
	CustomLog "D:/httpd/www/logs/access.log" common
	<Directory "D:/httpd/www/htdocs">
		Options FollowSymLinks
		AllowOverride All
		Order Deny,Allow
		Allow from all
	</Directory>
</VirtualHost>

10行目の「Order Deny,Allow」の設定が「Order Allow,Deny」になっていると、「http://www.example.com/」のアクセスで、 DocumentRoot で設定したディレクトリの index.html が読み込まれ、「http://www.example.com/index.html」で、VirtualHost で設定したディレクトリの index.html が読み込まれるという動作をする。