apache2.2.x系 VirtualHost設定

apache2.2.x系ではhttpd.confではなくhttpd-vhosts.confに設定を行うようになっていた


$ vi /usr/local/apache2/conf/httpd.conf

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
下記のようにコメントアウトを解除

# Virtual hosts
Include conf/extra/httpd-vhosts.conf
続いてhttpd-vhosts.confを設定

$ vi /usr/local/apache2/conf/extra/httpd-vhosts.conf
下記のように<VirtualHost>タグを作成

<VirtualHost *:80>
ServerAdmin miyokawa@miyokawa.net
DocumentRoot "/www/miyokawa.net"
ServerName miyokawa.net
ErrorLog "logs/miyokawa.net-error_log"
CustomLog "logs/miyokawa.net-access_log" common
</VirtualHost>
(miyokawa.netはローカルでしか閲覧できません)

apache再起動


$ /usr/local/apache2/apachectl restart

Nameサーバーなり端末のhostsファイルを変更しmiyokawa.netに接続
なぜか403 Forbiddenエラーになってしまう。
ディレクトリを閲覧する権限が無いということである。
/wwwを777に設定してみても変わらない。
なぜ????

httpd.confにこんな記述がありました。


<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
「Deny from all:すべての接続を拒否」って!

とりあえずhttpd-vhosts.confに以下を記述


<Directory "/www/">
AllowOverride None
Order allow,deny
Allow from all
</Directory>