WordPressの構築2:Nginxのインストールと設定
Nginxのインストール
Nginxの導入に必要なレポジトリを追加します。
$ sudo yum install epel-release $ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yumでサクッとインストールです。
$ sudo yum install nginx
Nginxの設定
Nginxのデフォルトのドキュメントルートは"/usr/share/nginx/html"です。
個人的に"/usr"や"/var"配下にドキュメントルートを置いておきたくないので"/home/www"配下に変更します。
あわせてNginxグループにも権限を与えておきます。(hogehogeは自身のアカウントです)
$ cd /home $ sudo mkdir www $ sudo chown -R hogehoge:nginx www $ sudo chmod 775 www
あわせてお名前.comで取得したドメインも設定しておきます。
ドメイン取得も色々調べましたが、費用的にもサービス的にもお名前.comが一番よさそう。
$ cd /etc/nginx/conf.d $ sudo cp default.conf default.conf.defaultbackup $ sudo vi default.conf
default.confを下記のように編集します。
server { #ポートの指定 listen 80; # ドメインの指定 server_name hogehoge.com; # アップロードできるファイルの最大サイズ client_max_body_size 5m; # ドキュメントルートの指定 location / { root /home/www; index index.php; # WordPressのパーマリンクを通常以外にした場合でもアクセスできるように try_files $uri $uri/ @wordpress; } # faviconへのリクエストを処理する location /favicon { empty_gif; access_log off; log_not_found off; } # phpを動作させるための設定 location ~ \.php$ { root /home/www; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_read_timeout 120; include fastcgi_params; } # wp-config.phpにアクセスさせない設定 location ~* /wp-config.php { deny all; } location @wordpress { fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_pass 127.0.0.1:9000; # WordPressのindex.phpを指定 fastcgi_param SCRIPT_FILENAME /home/www/index.php; include fastcgi_params; } }
その他、セキュリティ強化としてNginxのバージョン情報を提供しないようにします。
$ sudo cd /etc/nginx $ sudo vi nginx.conf
nginx.confのhttpディレクティブ内に下記を追加します。
http { : server_tokens off; : }
編集を終えたらNginxを起動し、あわせてサーバ起動時にNginxが起動するよう設定します。
$ sudo service nginx restart $ sudo chkconfig nginx on
これでNginxの設定は完了です。