nginxでVirtualHostの設定
参考にした記事
nginx バーチャルホスト - nginx @ ウィキ - アットウィキ
nginxの設定について
ざっくり手順
- nginxのインストール
http://hir-aik.hatenablog.com/entry/2014/04/16/160659 - 適当なドメインを取得
ここでは無料のTKドメインを取得
http://www.rental-server.ws/contents/review/61/ - 公開するHTMLファイルを置くディレクトリを用意。
/etc/nginx/sites-available/ドメイン名
のファイルを作成。
例)/etc/nginx/sites-available/hogehoge.com
- シンボリックリンクを作成
sudo ln -s /etc/nginx/sites-available/hogehoge.com /etc/nginx/sites-enabled/hogehoge.com
/etc/nginx/nginx.conf
の中身には、/etc/nginx/sites-enabled/
を見るようになっているため。 - nginxの再起動
service nginx reload
手順の補足
TKドメインの設定
バーチャルホストの設定
/etc/nginx/sites-available/hogehoge.com
の内容
server { # listen 80; # server_name www.hogehoge.com; #アクセスログの場所 access_log /srv/hogehoge.com/public/log/access.log; #エラーログの場所 error_log /srv/hogehoge.com/public/log/error.log; location / { #ドキュメントルートのディレクトリ root /srv/hogehoge.com/public/; index index.html index.php; } } server { listen 80; server_name hogehoge.com; access_log /srv/hogehoge.com/public/log/access.log; error_log /srv/hogehoge.com/public/log/error.log; location / { root /srv/hogehoge.com/public/vh/; index index.html index.php; } }
バーチャルホストの設定は、/etc/nginx/nginx.conf
ではなく、/etc/nginx/sites-available/
に書いて、/etc/nginx/sites-enabled/
にシンボリックリンクを作成するというのが習慣的な方法らしい。
nginxでsites-availableとsites-enabledを用いたバーチャルホストの設定 - YoshinoriN's Memento
/etc/nginx/nginx.conf
の中では、デフォルトで/etc/nginx/sites-enabled/*
の設定を見るようになっている。
/etc/nginx/sites-enabled/
の設定ファイルに対して、シンボリックリンクを作成していれば、/etc/nginx/sites-available/
に作成した設定ファイルの中に、SSLの設定を書いてもOK!
注意点
存在しないファイルやディレクトリを指定するとnginx再起動の時にエラーになる。
nginx -t
でエラー内容を確認して対応する。