MacでのVirtualHostについて。
Contents
設定方法
いつもlocalhost/〜でアクセスしててapacheにAliasとか書いてました・・・
windows同様に普通にhost設定すればいいじゃんと言うことに気づき修正。
dev.sample_hostでアクセスして、/Library/WebServer/Documents/sample_host/public/
というケースを想定しています。
/private/etc/host
1 |
127.0.0.1 dev.sample_host |
/etc/apache2/other/httpd-vhosts.conf
1 2 3 4 5 6 7 8 9 10 11 |
<VirtualHost *:80> ServerName dev.sample_host DocumentRoot /Library/WebServer/Documents/sample_host/public/ DirectoryIndex index.html index.php ErrorLog /var/log/apache2/samplehost_error.log CustomLog /var/log/apache2/samplehost_access.log common AddDefaultCharset UTF-8 <Directory "/Library/WebServer/Documents/sample_host/public/"> AllowOverride All </Directory> </VirtualHost> |
注意点
httpd -S
このコマンドでvhostsが正しく設定されているかがわかります。正しく打てば下記のような表示がされます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
httpd -S VirtualHost configuration: *:80 sample_host (/private/etc/apache2/other/httpd-vhosts.conf:1) ServerRoot: "/usr" Main DocumentRoot: "/Library/WebServer/Documents" Main ErrorLog: "/private/var/log/apache2/error_log" Mutex default: dir="/private/var/run/" mechanism=default Mutex mpm-accept: using_defaults Mutex rewrite-map: using_defaults PidFile: "/private/var/run/httpd.pid" Define: DUMP_VHOSTS Define: DUMP_RUN_CFG User: name="_www" id=70 not_used Group: name="_www" id=70 not_used |
httpd: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName
よく見る設定ですが、スルーしてました。
httpd.confにあるServerNameとhost本体の名前を一緒にしないと動かないようです。
1 |
ServerName localhost:80 |
参考リンク