差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
linux:nginx [2020/04/19 08:18] – ともやん | linux:nginx [2023/09/12 10:55] (現在) – [Events モジュールの設定] ともやん | ||
---|---|---|---|
行 1: | 行 1: | ||
- | < | ||
- | < | ||
- | #result pre, #mincode pre { | ||
- | overflow: scroll; | ||
- | overflow-x: hidden; | ||
- | font-size: 10px; | ||
- | } | ||
- | # | ||
- | height: 400px; | ||
- | overflow: scroll; | ||
- | overflow-x: hidden; | ||
- | font-size: 10px; | ||
- | } | ||
- | #logo { | ||
- | background-color: | ||
- | width: fit-content; | ||
- | padding: 2px 10px; | ||
- | } | ||
- | #logo p { | ||
- | margin: 0; | ||
- | } | ||
- | </ | ||
- | </ | ||
====== NGINX - ハイパフォーマンス ロードバランサー、Webサーバー、リバースプロキシ ====== | ====== NGINX - ハイパフォーマンス ロードバランサー、Webサーバー、リバースプロキシ ====== | ||
<WRAP #logo> | <WRAP #logo> | ||
行 35: | 行 12: | ||
<WRAP prewrap 100% # | <WRAP prewrap 100% # | ||
< | < | ||
- | whitewaterfoundry_wslu | + | whitewaterfoundry_wslu |
依存関係が解決しました。 | 依存関係が解決しました。 | ||
- | ======================================================================================================================== | + | ========================================================================================================== |
- | | + | |
- | ======================================================================================================================== | + | ========================================================================================================== |
インストール: | インストール: | ||
- | | + | |
依存関係のインストール: | 依存関係のインストール: | ||
- | | + | |
- | | + | |
トランザクションの概要 | トランザクションの概要 | ||
- | ======================================================================================================================== | + | ========================================================================================================== |
インストール | インストール | ||
行 54: | 行 31: | ||
これでよろしいですか? | これでよろしいですか? | ||
パッケージのダウンロード: | パッケージのダウンロード: | ||
- | (1/3): nginx-mimetypes-2.1.48-6.fc31.noarch.rpm | + | (1/3): nginx-mimetypes-2.1.48-6.fc31.noarch.rpm |
- | (2/3): gperftools-libs-2.7-6.fc31.x86_64.rpm | + | (2/3): gperftools-libs-2.7-6.fc31.x86_64.rpm |
- | (3/3): nginx-1.16.1-1.fc31.x86_64.rpm | + | (3/3): nginx-1.16.1-1.fc31.x86_64.rpm |
- | ------------------------------------------------------------------------------------------------------------------------ | + | ---------------------------------------------------------------------------------------------------------- |
- | 合計 | + | 合計 |
トランザクションの確認を実行中 | トランザクションの確認を実行中 | ||
トランザクションの確認に成功しました。 | トランザクションの確認に成功しました。 | ||
行 64: | 行 41: | ||
トランザクションのテストに成功しました。 | トランザクションのテストに成功しました。 | ||
トランザクションを実行中 | トランザクションを実行中 | ||
- | 準備 | + | 準備 |
- | インストール中 | + | インストール中 |
- | インストール中 | + | インストール中 |
- | インストール中 | + | インストール中 |
- | scriptletの実行中: | + | scriptletの実行中: |
- | 検証 | + | 検証 |
- | 検証 | + | 検証 |
- | 検証 | + | 検証 |
インストール済み: | インストール済み: | ||
- | gperftools-libs-2.7-6.fc31.x86_64 | + | gperftools-libs-2.7-6.fc31.x86_64 |
</ | </ | ||
</ | </ | ||
+ | |||
+ | ===== NGINX の設定 ===== | ||
+ | |||
+ | ==== 自動起動設定 ==== | ||
+ | < | ||
+ | $ sudo systemctl enable nginx | ||
+ | </ | ||
+ | <WRAP prewrap 100% #result> | ||
+ | < | ||
+ | Created symlink / | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== 設定ファイルのバックアップ ==== | ||
+ | < | ||
+ | $ sudo cp / | ||
+ | </ | ||
+ | <WRAP prewrap 100% #result> | ||
+ | < | ||
+ | Created symlink / | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== ワーカープロセス数の設定 ==== | ||
+ | サーバーのプロセッサ数を調べる。\\ | ||
+ | ※下記の例では 4 個のプロセッサを搭載している。\\ | ||
+ | < | ||
+ | $ cat / | ||
+ | </ | ||
+ | <WRAP prewrap 100% #result> | ||
+ | < | ||
+ | processor | ||
+ | processor | ||
+ | processor | ||
+ | processor | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ワーカープロセス数を **auto** または、プロセッサ数に設定。\\ | ||
+ | < | ||
+ | $ sudo vi / | ||
+ | </ | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | # | ||
+ | worker_processes | ||
+ | </ | ||
+ | </ | ||
+ | **auto** の場合はコア数を見て自動設定される。\\ | ||
+ | |||
+ | ==== その他ワーカープロセスの設定 ==== | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | # | ||
+ | worker_processes 4; | ||
+ | worker_rlimit_nofile 8192; # ワーカープロセスが扱える最大ファイル数 | ||
+ | worker_priority 0; # ワーカープロセスの優先度 | ||
+ | worker_cpu_affinity 0001 0010 0100 1000; # ワーカープロセスが使うCPUコア(4コア) | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ※**worker_cpu_affinity** はプロセッサの数に応じて変更する。\\ | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | worker_cpu_affinity 01 10; # CPU 2コア | ||
+ | worker_cpu_affinity 001 010 100; # CPU 3コア | ||
+ | worker_cpu_affinity 0001 0010 0100 1000; # CPU 4コア | ||
+ | worker_cpu_affinity 00001 00010 00100 01000 10000; # CPU 5コア | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== Events モジュールの設定 ==== | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | events { | ||
+ | multi_accept off; # リスニングソケットオープン時の相互排他制御 | ||
+ | worker_connections 1024; # ワーカープロセス同時接続数 | ||
+ | use epoll; | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== セッション、セキュリティ設定 ==== | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | http { | ||
+ | server_tokens off; # バージョン情報非表示 | ||
+ | # | ||
+ | keepalive_requests 1000; # KeepAlive 接続で処理できる最大要求数 | ||
+ | keepalive_timeout | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== タイプハッシュテーブルの最大値を設定 ==== | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | http { | ||
+ | # | ||
+ | types_hash_max_size 4096; | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== アップロードサイズ制限の変更 ==== | ||
+ | ファイルのアップロード時に **413 Request Entity Too Large** が発生する場合は、デフォルト 1M の制限を変更する。\\ | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | http { | ||
+ | # | ||
+ | client_max_body_size 100m; | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== 設定の反映 ==== | ||
+ | 設定ファイルの内容を検証する。\\ | ||
+ | < | ||
+ | $ sudo nginx -t | ||
+ | </ | ||
+ | <WRAP prewrap 100% #result> | ||
+ | < | ||
+ | nginx: the configuration file / | ||
+ | nginx: configuration file / | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | nginx を再起動する。\\ | ||
+ | < | ||
+ | $ sudo systemctl restart nginx | ||
+ | </ | ||
+ | |||
+ | ===== 動作確認 ===== | ||
+ | [[http:// | ||
+ | {{: | ||
+ | |||
+ | ===== トラブルシューティング ===== | ||
+ | |||
+ | ==== 設定ファイルの内容検証で警告が発生する ==== | ||
+ | < | ||
+ | nginx: [warn] could not build optimal types_hash, you should increase either types_hash_max_size: | ||
+ | </ | ||
+ | |||
+ | タイプハッシュテーブルの最大値を変更する。\\ | ||
+ | <WRAP prewrap 100% # | ||
+ | <code autoconf / | ||
+ | http { | ||
+ | # | ||
+ | types_hash_max_size 4096; | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | / | ||
+ | [[https:// | ||
+ | |||
+ | ===== 参考文献 ===== | ||
+ | [[http:// | ||
+ | [[https:// | ||
+ | [[http:// | ||
+ | [[https:// | ||