バーチャルホストの設定を確認・反映しよう。
さて、それではこの編集ファイルを保存し閉じたら、設定が正常にできたかを確認しましょう。
設定のテストを行う際には、nginxコマンドに次のようにconfigtestを引数として渡します。
# /etc/init.d/nginx configtest
正常にテストが実行されれば、こんな風に結果が返ってくるはずです↓
# /etc/init.d/nginx configtest nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
もしエラーがあると、こんな風にエラーが返ってきます↓
# /etc/init.d/nginx configtest nginx: [emerg] unexpected end of file, expecting "}" in /etc/nginx/conf.d/ORG_default.conf:58 nginx: configuration file /etc/nginx/nginx.conf test failed
このエラーは、最後の「}」を付け忘れてしまった場合のエラーです。
エラー内容を読んで、設定ファイルでおかしなところを修正してから再度configtestを実行、を繰り返し、
successfulが返ってくるようにしましょう。
設定がOKになっても、その変更内容はまだ反映されていない状態です。
そこで、変更内容を反映します。その際には次のコマンドを実行します。
# /etc/init.d/nginx reload
下記のように結果が返ってくれば再読み込み成功です。
# /etc/init.d/nginx reload nginx を再読み込み中: [ OK ]
設定反映ができたら、次に各rootディレクティブで指定したパスにindex.htmlを作成しておきましょう。
# mkdir /usr/share/nginx/html/server1 # vi /usr/share/nginx/html/server1/index.html
index.htmlの内容はこんな感じ。
<html> <head><meta charset="utf-8"></head> <body> バーチャルホスト「server1」のindexページです。 </body> </html>
もちろんこの通りでなくても構いません。
同様にserver2,3のディレクトリとindex.htmlも作成しておきます。
最後に今作成したバーチャルホストのドメインでアクセスできるようにローカルPCのhostsファイルを書き換えましょう。
本来、ドメイン名をDNSサーバに問い合わせ、取得できたIPアドレスにアクセスする、という仕組みでインターネット上のサーバへのアクセスというのは行われますが、今回はDNSサーバを使用せずに仮で名づけたserver1~3.comというサーバへアクセスしますので、ドメイン名とIPアドレスの対応をローカルPCに指定しておいてやらねばなりません。
その設定を行うのがhostsファイルです。
hostsファイルの末尾に以下の3行を追加しましょう。
192.168.100.XXX server1.com 192.168.100.XXX server2.com 192.168.100.XXX server3.com
最初のIPアドレスはNginxをインストールしているサーバのIPアドレスを指定してあげてください。
hostsファイルはそのPCの管理者権限でないと書き換えられませんので注意しましょう。
ここまでできたら、実際にWebブラウザでアクセスして表示を確認してみましょう。
http://server1.comにアクセス
http://server3.comにアクセス
いかがでしょうか。先ほど作成したHTMLファイルが表示されたと思います。