Nginxの使い方

静的サイトを作る

  1. 公式からmainline versionインストール
  2. nginx/Windows-x.xx.xx をダウンロード
  3. nginx.exeがあるディレクトリで start nginx
  4. localhost:80にアクセス
  5. nginx -s stop で終了

https://www.yaz.co.jp/tec-blog/web%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/263#Windows%E3%81%A7%E3%81%AE%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89

nginx.configファイルの読み方

  • ディレクティブブロック: http{ }とかserver{ }、location / {} 等の基本的な構成要素モジュールごとに記述する。

https://heartbeats.jp/hbblog/2012/02/nginx03.html

worker_processes

  • ワーカープロセス数を定義
  • autoを指定することでCPUのコア数に応じてワーカプロセス数が自動で決まる

events

1
2
3
events {
worker_connections 1024;
}
  • worker_connections 1024 = worker_proccessが受け付ける接続の最大数

http://raichel.tech/web/read-nginx-conf

mime.types;

1
include       mime.types;
  • MIMEタイプと拡張子の関連付けを定義したファイル。

default_type

  • mime.typesで拡張子からMIMEタイプを決定できなかったときに、ここで指定したMIMEタイプが適応

location

location / {
[locationコンテキスト]
}

  • location の後ろにパスを指定
  • パスの前に”=”, “~”, “~*”, “^~”の4種類のプレフィックスを付けて一致した場合適応される。
1
2
3
4
5
6
location / {
root [ファイルパス];
alias [ファイルパス];
index [ファイルパス];
try_files [ファイルパス] [ファイルパス];
}
  • root: ルートとするパス
  • ailias: ファイルのパスに対応
  • index: 指定したパスに内部リダイレクトできる。
    • index a.html b.html /c.html
    • aがなければbを表示、abが無ければcにリダイレクト
  • try_files
    • 指定したファイルやディレクトリの存在を順番に調べ、存在すれば、そのファイルやディレクトリに対応したファイルを返す。
    • 一つも存在しなかったら、最後に記述したパスに内部リダイレクト。
    • “=コード”を指定したときには指定した応答コードが返される

error_page

1
2
3
4
5
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root [ファイルパス];
internal;
}
  • error_page: エラーが発生した時のリダイレクト先
  • internal: 内部からのリクエストのみ受け付ける

https://heartbeats.jp/hbblog/2012/04/nginx05.html
https://heartbeats.jp/hbblog/2012/04/nginx04.html

keepalive_timeout

  • keep-aliveの設定
    • keep-alive :1回のTCP接続で複数のHTTPリクエストを処理する機能

http://www.nari64.com/?p=579

nginxのセキュリティ設定