名前ベースのバーチャルホストをnginxに実装してみた!!

私は一部のサイトではwebサーバにapacheではなく、nginxを利用している。
構築方法は以下のとおり。

さくらVPSにnginxとfast-cgiベースにwordpressをインストールした!!

apacheなら慣れているので、簡単に名前ベースのバーチャルホストが作れるのだが、
nginxでどうするのか試しに構築して見ることにした。

ネット上に意外と情報が少なかったので、今後構築する人のために、以下作業メモ。

nginxの名前ベースのバーチャルホストは意外と簡単だった。

バーチャルホストのnginx.confファイルでは以下のようになっているかと思います。
一部抽象化して表示しています。

[bash]
http{
パラメータ
server{
パラメータ
location{
パラメータ
}
}
}
[/bash]

これに対して、
以下の記述を追加すれば完了です。

[bash]
http{
パラメータ
server{
パラメータ
location{
パラメータ
}
}
#ここから追加
server{
listen *:80;
server_name ドメイン名;
client_max_body_size 5M;
access_log /var/log/nginx/適当なディレクトリ/access.log combined;
error_log /var/log/nginx/適当なディレクトリ/error.log debug;
root ドキュメントルート;
#phpをfastcgiで使う人の場合
location ~ \.php$ {
root ドキュメントルート;
fastcgi_pass 127.0.0.1:9000;#個人の設定による
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME ドキュメントルート$fastcgi_script_name;
include fastcgi_params;
}

location / {
root ドキュメントルート;
index index.html index.htm index.php;
if (-f $request_filename) {
break;
}
if (!-e $request_filename) {
rewrite ^(.+)$ /index.php?q=$1 last;
}
}
  }
#ここまで追加部分
}
[/bash]

apacheと似ていて記載しやすいかと思います。

参考にしたサイト

nginx の バーチャルホスト設定


Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *