NGINX サーバーブロックジェネレーター
ガイド
NGINX サーバーブロックジェネレーター
シンプルなフォームから、即座に貼り付けることができるNGINXサーバーブロックを構築します。ポートを選択し、静的ファイルを提供するか、バックエンドにプロキシを設定するかを選択し、SSL、HTTP/2、GZIP、およびHTTPからHTTPSへのリダイレクトを切り替えます。入力内容が変更されると出力も自動的に更新され、ほとんどのディストリビューションで安全に貼り付けることができます。 /etc/nginx/sites-available/ ほとんどのディストリビューションで。
使用方法
- メインの サーバー名 (たとえば
example.com)および、その他のエイリアスのようなwww.example.com. - を選択します リスニングポート — 通常は
80でHTTP。SSLが有効になると、ポートは自動的に443 sslに置き換えられます。 - [ブラウザのchrome]を選択し、 モード: 静的ファイル ドキュメントルートおよびインデックスファイルフィールドを表示し、 リバースプロキシ アップストリームURLフィールドを表示し、オプションのWebSocketヘッダーをフォワードします。
- トグル SSLを有効化 証明書パス、HTTP/2、および自動HTTPからHTTPSへのリダイレクトブロックを追加します。
- 調整 エクストラ GZIP圧縮、クライアント最大ボディサイズ、アクセス/エラーログパスなど。
- を使用して、よく使用されるヘッダーをデフォルト値とともに挿入します。認証セクションで認証タイプと認証情報を設定し、カスタムヘッダーを手動で追加します。curl、Postman、またはコードで使用するための完全なヘッダーセットをコピーします。 コピー または ダウンロード 出力のボタンを使って構成を取得します。
機能
- 静的ファイルまたはリバースプロキシモード — ドキュメントルートからファイルを提供するか、別のサービスにリクエストを転送するかを切り替えます。
- SSLヘルパー — 1つのスイッチで、
ssl_certificate,ssl_certificate_key、現代的なTLSプロトコル、オプションのHTTP/2、および別途のHTTPからHTTPSへのリダイレクトサーバーブロックを追加します。 - WebSocket対応プロキシ — リバースプロキシモードは、WebSocketおよびサーバー送信イベントバックエンドに必要な
UpgradeとConnectionヘッダーを発行します。 - プロダクション向けのデフォルト値 — 意味のある
X-Forwarded-*ヘッダー、GZIP MIMEタイプ、IPv6リスナー、および設定可能なclient_max_body_size、アクセスログ、およびエラーログパス。 - ライブプレビュー — 入力が変更されると自動的に出力が再生成され、コピーおよびダウンロードボタンが設置されており、迅速なデプロイが可能です。
よくある質問
-
NGINXサーバーブロックとは何ですか?
サーバーブロックは、Apacheの仮想ホストに相当するNGINXの機能です。これは、特定のホスト名とポートに対してNGINXが応答する方法を決定するディレクティブをグループ化します。どのファイルを提供するか、トラフィックをどこにプロキシするか、どのTLS証明書を使用するか、どのログを記録するかを決定します。NGINXは、入力されたリクエストの
Hostヘッダーとリスニングソケットをブロックのserver_nameとlisten") ディレクティブを正しくフォーマットします。 -
と比較して、対応するサーバーブロックを特定します。
NGINXは、静的ファイルとリバースプロキシの間でどのように選ぶか?
locationその行動は、各rootがほとんどのケースをカバーします。CIでのリグレッションテストには、try_filesとindexによって決定されます。静的ファイルのロケーションは、proxy_passを使用してディスク上のファイルを検索し、リバースプロキシのロケーションは、 -
を使用して別のアドレスにHTTP経由でリクエストを転送します。NGINX自体は意図を自動検出しません — あなたが適切なディレクティブを書くことでモードを選択し、NGINXはそれに一致するブロックを実行します。
HTTP/2はHTTP/1.1よりも優れている理由は?
-
HTTP/2は、1つのTCP接続上で複数の並列リクエストをマルチプレックスし、ヘッダーを圧縮されたバイナリ形式(HPACK)で送信し、サーバープッシュをサポートします。実際には、これはヘッドオブラインブロッキングを減少させ、同じオリジンから多くのリソースを読み込むページの遅延を低減します。HTTP/2はブラウザでTLSを必要とし、そのため、SSLと同時に同じリスナーで有効化されています。
NGINXの
gzipモジュールは、送信されるレスポンスボディをサーバーから出力する前にDEFLATEで圧縮し、設定可能なレベルを使用します。これは、HTML、CSS、JavaScript、JSON、XML、SVGなどのテキストタイプに最も効果的であり、JPEG、PNG、または動画などの既に圧縮されたフォーマットには無効です。NGINXはクライアントにVary: Accept-Encodingヘッダーを広報することで、キャッシュが圧縮および未圧縮のコピーを保存できるようにします。 -
プロキシ時にX-Forwarded-Forの役割は?
リクエストがリバースプロキシを通過すると、アップストリームサービスはプロキシのIPをクライアントとして見ます。
X-Forwarded-Forヘッダーは元のクライアントアドレスの連鎖を保持し、X-Real-IPはただ直前のクライアントを記録します。これらは、バックエンドが実際の訪問者を再構成し、HTTPSで接続したかどうかを確認する上で、正確なレート制限、アクセス制御、および分析に不可欠です。X-Forwarded-Proto、バックエンドが実際の訪問者を識別し、HTTPS経由で接続したかどうかを再構成できるため、正確なレート制限、アクセス制御、および分析が可能になります。
恵 スコアボードが到着しました!
スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!
