僕の Apache 初入門(VirtualHost)
超簡単な例で。
http://my-node.com/
と http://other-node.com
で同一の IP である 192.168.33.13
に接続して、別のページを出すだけのお仕事。
/etc/httpd /conf + httpd.conf /conf.d + 01-my-node.conf + 02-other-node.conf
上記のように httpd.conf に全部かくのではなくて、conf.d の下に書き分けるようにする。
httpd.conf
以下を足す。(conf.d 下に、これだけ書いたファイルを足してもいいかもしれん)
NameVirtualHost *:80
01-my-node.conf
<VirtualHost *:80> DocumentRoot /var/www/html/my_node ServerName my-node.com </VirtualHost>
02-other-node.conf
<VirtualHost *:80> DocumentRoot /var/www/html/other_node ServerName other-node.com </VirtualHost>
各ノードの HTML 配置
/var/www/html /my-node + index.html /other-node + index.html
それぞれの index.html
にノード名を書いておく
再起動
$ sudo service httpd restart Stopping httpd: [OK] Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName [ OK ]
動作確認
ローカルの hosts を書き換え
当方は Mac 環境となります。
sudo vim /private/etc/hosts
を開いて以下を足す。
192.168.33.13 my-node.com 192.168.33.13 other-node.com
ブラウザから接続してみます
できた!
ログの場所も変えてみる
<VirtualHost *:80> DocumentRoot /var/www/html/my_node ServerName my-node.com CustomLog logs/my_node_log common ErrorLog logs/my_node_error_log </VirtualHost>
お決まりの再起動をかけると、my-node.com
へのアクセスのログが /etc/httpd/logs/my_node_log
にログが出るようになりました。
パーミッションの事がよく分からなかった。