Nginx - 基本的な設定!
Updated:
Linux Mint にソースをビルドしてインストールした軽量 Web サーバ Nginx の基本的な設定についてです。
(Debian, Ubuntu 等 GNU 系ディストリビューションは同様だと思う)
ソースをビルドしてインストールする方法については過去記事を参照。
0. 前提条件
- Linux Mint 13 Maya (64bit) での作業を想定。
- Nginx 1.2.6 がソースビルドによりインストール済み。
- パッケージを利用してインストールした Nginx とはディレクトリ構成等が若干異なる。 (別途作成したヴァーチャルホストの設定ファイルを取り込む形式になっていたり・・・)
1. 基本設定
基本的(グローバル)な設定は /usr/local/nginx/conf/nginx.conf
で行う。
取り急ぎ以下のようにした。(コメント部分は省略)
File: /usr/local/nginx/conf/nginx.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
worker_processes 2; # <= CPU コア数を超えない最大値に変更
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost; # <= 取り急ぎ localhost のまま
location / {
root /var/www/html; # <= 実際のドキュメントルートに変更
index index.html index.htm;
}
error_page 404 /404.html; # <= コメント解除
error_page 500 502 503 504 /50x.html;
#location = /50x.html { # <= コメントアウト
# root html; # <= コメントアウト
#} # <= コメントアウト
location ~ /\. { # <= 追加
deny all; # <= 追加
access_log off; # <= 追加
log_not_found off; # <= 追加
} # <= 追加
}
}
エラーページについて、404.html
、50x.html
ファイルは実際のドキュメントルート(今回は /var/www/html
ディレクトリ)配下に置いたので、上記のようにした。
また、Nginx では .htaccess
等のドットファイルは使用しないので、アクセスを拒否しログ出力もオフにした。(全てのドットファイルについて)
2. バーチャルホスト設定
バーチャルホストの設定は、設定ファイル /usr/local/nginx/conf/nginx.conf
内で server
ディレクティブを作成して行う。
今回は、特にバーチャルホストの設定はしないので編集しない。
3. 設定ファイル文法チェック
作成・編集した設定ファイルの文法が誤っていないかチェックしてみる。
$ sudo /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx-1.2.6/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx-1.2.6/conf/nginx.conf test is successful
4. Nginx リロード
設定有効化のため、 Nginx をリロード(当然、起動していなければ起動)する。
$ sudo service nginx reload
Reloading nginx daemon: configuration...reloaded.
5. 確認
ブラウザで http://127.0.0.1/
にアクセスしてみて、サーバルート(今回は /var/www/html/
)に用意した index.html
のページが表示されれば OK.
これで、静的な HTML は表示可能となった。
今回は取り急ぎ単純なページを表示させるだけの作業だったが、実際には PHP を動かせるようにしたり、キャッシュの対応をしたり、セキュアな対応をしたり等々する必要がある。
以上。
Comments