Nginx/ja

nginx はウェブサーバ / リバースプロキシサーバです. ]]Apache や lighttpd と同様に支持されているウェブサーバとして良い選択肢です.

インストール
パッケージのインストールを始める前に、まずはNginx向けの適切なUSEフラグを設定します.

拡張 USE フラグ
Nginxはモジュールによって機能が拡張されます. このモジュールによるアプローチの管理をより簡潔にするために、nginxのebuildではexpanded USE ( USE_EXPAND ) flagsを用い、どのモジュールをインストールするか指定されます.


 * HTTP に関連するモジュールは NGINX_MODULES_HTTP 変数を介して有効化できます.
 * メールに関連するモジュールは NGINX_MODULES_MAIL 変数を介して有効化できます.
 * サードパーティモジュールは NGINX_ADD_MODULES 変数を介して有効化できます.

これらの変数はに設定する必要があります. 詳しい解説は と  にあります.

例えば、 モジュールを有効にするには:

上記の設定は NGINX_MODULES_HTTP のデフォルト値を上書きして  に設定します. デフォルトの NGINX_MODULES_HTTP 値を上書きせずに  モジュールを有効化するには、次の USE フラグ記述を  に指定することで行えます:

Emerge
USE フラグを設定したら、 をインストールします:

インストールを確認する
デフォルトの nginx 設定は をルートディレクトリとして設定したバーチャルサーバを定義しています. しかし のため、nginx ebuild は  ディレクトリのみ作成し、インデックスファイルを作成しません. デフォルト設定を動作させるには、 ディレクトリと簡単なインデックスファイルを作成してください:

nginxパッケージはinitサービススクリプトをインストールし、それを使ってシステム管理者はnginxを停止、起動、及び再起動することができます. nginxサービスを起動するには次のコマンドを実行します:

nginx が正常に動作しているか確認するには、ブラウザで http://localhost にアクセスするか、コマンドライン上で動く などを使います:

設定
nginxの設定はファイルを通して行います.

単一サイト利用
以下は、(PHPのような)ダイナミック生成を用いない単一サイト利用の例です.

複数サイト利用
複数のファイルに設定を分割する為、 ディレクティブを利用することが可能です:

PHP サポート
PHPサポートを有効化する為には、次の行をnginxの設定ファイルに追加してください. この例ではnginxとPHPプロセスはUNIXソケットを介して情報を交換します.

このセットアップでは、 USE フラグによって管理されるFastCGI Process Managerサポートと共にビルドされたPHP が必要です:

USEフラグを有効にして PHP を再ビルドします:

PHP 7.0 以降のコンフィグファイルは少し異なります:

php-fpm ファイルでタイムゾーンを設定してください. 下の FileBox 内の  テキストを適切なタイムゾーン情報に置き換えてください.

デーモンを開始します:

を default ランレベルに追加します:

変更した設定を使って を再読み込みします:

Alternatively, for systemd:

IP アドレスのアクセスリスト
次の例は特定の URL（ここでは ）へのアクセスを以下からに制限する方法を示しています:


 * 特定のホスト (e.g. 192.0.2.1 127.0.0.1)
 * 特定の IP ネットワーク (e.g. 198.51.100.0/24)

ベーシック認証
nginx は、ユーザ名とパスワードを検証することによって、リソースへのアクセスを制限することができます:

ファイルは、次のコマンドを使用して生成することができます:

サードパーティー製モジュール
サードパーティ製モジュールをダウンロードして、 に移動してください. 選択した Nginx モジュールを手動でコンパイルし、 に次の行を追加してください:

有効化されたサードパーティ製モジュールとともに、nginx を再ビルドしてください:

OpenRC
nginx ウェブサーバを開始します:

nginx ウェブサーバを停止します:

システム再起動時にサービスを自動で開始できるように nginx を default ランレベルに追加します:

接続を切ることなく nginx の設定を再読み込みします:

nginx サービスを再起動します:

systemd
nginx ウェブサーバを開始します:

nginx ウェブサーバを停止します:

サービスの状態を確認します:

システム再起動時にサービスの自動開始を有効化します:

接続を切ることなく nginx の設定を再読み込みします:

nginx サービスを再起動します:

トラブルシューティング
問題が発生したときは、以下のコマンド群が状況をトラブルシュートする助けになるかもしれません.

設定の妥当性を検証する
実行中の nginx の設定にエラーが無いことを確認してください:

を  オプションとともに実行することで、nginx は実際に  デーモンを開始することなく、設定ファイルの妥当性を検証します. デフォルト以外の場所にある設定ファイルをテストするには、ファイルへのフルパスとともに  オプションを使用してください.

プロセスが実行中か確認する
プロセスが実行中か確認してください:

bind されたアドレスとポートを確認する
nginx デーモンが正しい TCP ポート (HTTP なら 80、HTTPS なら 443、など) で listen しているか確認してください:

外部の情報

 * https://nginx.org/en/docs/beginners_guide.html - 初心者ガイド.  についてよく知らない人にとって役立ちます.
 * https://nginx.com/resources/admin-guide/ - 管理ガイド. 現場で作業する管理者にとって役立ちます.
 * http://wiki.nginx.org/Main - nginx ウィキ.
 * https://github.com/h5bp/server-configs-nginx - H5BP nginx コンフィグ.