nginx 設定生成ツール

シンプルなトグルから完全なnginxのサーバーブロックを、ブラウザー内でリアルタイムに作成します。入力はお使いのデバイスに留まります。

あなたのドメイン・パス・証明書の場所は、設定を作成するためにブラウザー内でのみ使われ、アップロードされることはありません。それでも、実際の秘密鍵の内容をどのツールにも貼り付けないようにしてください。

ウェブルートのファイル権限が必要ですか?chmod計算ツールをお試しください。

nginx 設定生成ツール について

このnginx設定生成ツールは、いくつかの入力とトグルを、sites-availableにそのまま置ける完全で有効なnginxのサーバーブロックに変換します。静的サイト(root + index に try_files)か、リバースプロキシ(標準の Host・X-Real-IP・X-Forwarded-For・X-Forwarded-Proto ヘッダーを備えた proxy_pass、加えて任意のWebSocketアップグレード行)を選べます。SSLをオンにすると443でリッスンし、ssl_certificate と ssl_certificate_key を設定し、HTTPをHTTPSへ301でリダイレクトする2つ目のサーバーブロックを出力します。gzip、長期間の静的アセットキャッシュ、client_max_body_size の上限、www→非wwwの正規化リダイレクトを、それぞれワンクリックで追加できます。nginx設定生成ツールとして、波括弧のバランスとインデントをきれいに保ち、結果をコピーするか <domain>.conf としてダウンロードできます。すべてはブラウザー内で動作するため、ドメインとパスはお使いのデバイスに留まります。

機能

nginx 設定生成ツール の使い方

  1. ドメインとリッスンポートを入力し、静的サイトかリバースプロキシかを選びます。
  2. rootとindex、またはアプリ向けの proxy_pass のアップストリームを入力します。
  3. 必要に応じてSSL・gzip・キャッシュ・ボディサイズ・wwwリダイレクトを切り替えます。
  4. 右側でリアルタイムのnginx設定を読み、.conf を「コピー」または「ダウンロード」します。

入力

Domain: example.com
Mode: Reverse proxy
Upstream: http://127.0.0.1:3000
SSL: on

出力

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name example.com www.example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    listen [::]:80;
    server_name example.com www.example.com;

    return 301 https://$host$request_uri;
}

443のリバースプロキシと、対応するHTTP→HTTPSのリダイレクトブロックです。

よくあるエラーとトラブルシューティング

よくある質問

nginxでリバースプロキシを設定するには?
「リバースプロキシ」を選び、proxy_pass にアップストリーム(例:http://127.0.0.1:3000)を入力すると、生成ツールが標準の Host・X-Real-IP・X-Forwarded-For・X-Forwarded-Proto ヘッダーを備えた location / ブロックを追加します。アプリがws/wssを使う場合はWebSocketサポートを有効にしてください。
nginxのサーバーブロックはどこに置きますか?
DebianやUbuntuでは、生成したファイルを /etc/nginx/sites-available/example.com として保存し、sites-enabled にシンボリックリンクします。他の多くのディストリビューションでは /etc/nginx/conf.d/example.com.conf に置き、nginx -t を実行してリロードします。
SSLトグルは設定をどう変えますか?
メインのサーバーを 443 ssl でリッスンするように切り替え、ssl_certificate と ssl_certificate_key を追加し、ポート80上にすべてのリクエストを https:// へ301でリダイレクトする2つ目のサーバーブロックを出力するため、訪問者は常に安全なサイトに到達します。
ここでの静的サイトとリバースプロキシの違いは何ですか?
静的モードは index と try_files の location を使い root ディレクトリからファイルを配信し、HTML・SPA・ビルド済みアセットに最適です。リバースプロキシモードはファイルを配信する代わりに、proxy_pass とプロキシヘッダーでリクエストをアップストリームのアプリサーバーへ転送します。
gzipと静的アセットのキャッシュを追加できますか?
はい。gzipトグルは text・JSON・JavaScript・CSS・XML・SVG 向けに調整されたgzipブロックを追加し、キャッシュトグルは一般的なアセット拡張子に対し30日の expires と immutable な Cache-Control ヘッダーを設定する location を追加します。
私のドメインや設定はどこかに送信されますか?
いいえ。このnginx設定生成ツールは完全にブラウザー内で動作するため、入力したドメイン・パス・証明書の場所はお使いのデバイス上で処理され、生成されたファイルがアップロードされることはありません。

関連ツール

すべての ArrayKit ツール