更新ログ

Nginx設定クイックリファレンス

Nginxのよく使う設定断片クイックリファレンス、設定コードの迅速な検索とコピー

基本設定
7

ワークプロセス数を自動設定(通常はCPUコア数と同じ)

worker_processes auto;

各ワークプロセスの最大接続数を設定

events {
    worker_connections 1024;
}

MIMEタイプ設定を含む

include /etc/nginx/mime.types;
default_type application/octet-stream;

効率的なファイル転送を有効にする

sendfile on;
tcp_nopush on;
tcp_nodelay on;

長時間接続のタイムアウト時間を設定

keepalive_timeout 65;

クライアントリクエストボディの最大サイズを設定

client_max_body_size 100M;

Nginxのバージョン番号を隠す

server_tokens off;
Serverブロック
6

基本的なServerブロック設定

server {
    listen 80;
    server_name example.com;
    root /var/www/html;
    index index.html;
}

複数のドメインを設定

server_name example.com www.example.com;

ワイルドカードドメインを設定

server_name *.example.com;

デフォルトサーバーを設定

listen 80 default_server;

IPv6アドレスを監視

listen [::]:80;

ルートディレクトリまたは別名を設定

root /var/www/html;
# またはaliasを使用
alias /var/www/files/;
Locationマッチング
7

正確なパスマッチング

location = /path {
    # 精確マッチング
}

接頭辞マッチングパス

location /api/ {
    # 接頭辞マッチング
}

正規表現マッチング

location ~ \.php$ {
    # 正規表現マッチング(大文字小文字区別)
}

大文字小文字区別なしの正規表現マッチング

location ~* \.\(jpg|jpeg|png|gif\)$ {
    # 正規表現マッチング(大文字小文字区別なし)
}

優先プレフィックス一致(正規表現より優先)

location ^~ /images/ {\n    # 優先プレフィックス一致\n}

ファイルの試行順序(SPAアプリでよく使われる)

location / {\n    try_files $uri $uri/ /index.html;\n}

内部リクエストのみアクセス可能

location /internal/ {\n    internal;\n}
リバースプロキシ
7

基本的なリバースプロキシ設定

location /api/ {\n    proxy_pass http://backend:3000/;\n}

プロキシリクエストヘッダーの設定

proxy_set_header Host $host;\nproxy_set_header X-Real-IP $remote_addr;\nproxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\nproxy_set_header X-Forwarded-Proto $scheme;

WebSocketプロキシ設定

location /ws/ {\n    proxy_pass http://backend:3000/;\n    proxy_http_version 1.1;\n    proxy_set_header Upgrade $http_upgrade;\n    proxy_set_header Connection "upgrade";\n}

上流サーバーグループの定義

upstream backend {\n    server 127.0.0.1:3000;\n    server 127.0.0.1:3001;\n    keepalive 32;\n}

負荷分散設定

upstream backend {\n    least_conn;  # または ip_hash;\n    server 127.0.0.1:3000;\n    server 127.0.0.1:3001;\n}

プロキシタイムアウト設定

proxy_connect_timeout 60s;\nproxy_send_timeout 60s;\nproxy_read_timeout 60s;

プロキシバッファ設定

proxy_buffering on;\nproxy_buffer_size 4k;\nproxy_buffers 8 4k;
SSL/HTTPS
7

基本的なSSL設定

server {\n    listen 443 ssl http2;\n    ssl_certificate /path/to/cert.pem;\n    ssl_certificate_key /path/to/key.pem;\n}

SSLプロトコルバージョンの設定

ssl_protocols TLSv1.2 TLSv1.3;

暗号スイートの設定

ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;\nssl_prefer_server_ciphers on;

SSLセッションキャッシュ

ssl_session_cache shared:SSL:10m;\nssl_session_timeout 1d;

HTTPをHTTPSにリダイレクト

server {\n    listen 80;\n    server_name example.com;\n    return 301 https://$server_name$request_uri;\n}

HSTSを有効化

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;

OCSP Staplingを有効化

ssl_stapling on;\nssl_stapling_verify on;\nresolver 8.8.8.8 8.8.4.4 valid=300s;
キャッシュ設定
5

静的リソースキャッシュ

location ~* \\.\.(css|js|jpg|jpeg|png|gif|ico|svg|woff|woff2)$ {\n    expires 30d;\n    add_header Cache-Control "public, immutable";\n}

キャッシュを無効化

location /api/ {\n    add_header Cache-Control "no-store, no-cache, must-revalidate";\n}

プロキシキャッシュ設定

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g;\n\nlocation / {\n    proxy_cache my_cache;\n    proxy_cache_valid 200 1d;\n}

ETagを有効化

etag on;

条件リクエストを有効化

if_modified_since before;
Gzip圧縮
4

基本的なGzip圧縮設定

gzip on;\ngzip_vary on;\ngzip_min_length 1024;\ngzip_comp_level 6;

圧縮するMIMEタイプの設定

gzip_types text/plain text/css text/xml text/javascript application/javascript application/json application/xml;

プロキシリクエストに圧縮を有効化

gzip_proxied any;

プリコンプレッションファイルの有効化

gzip_static on;
セキュリティ設定
6

CORSクロスドメイン設定

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
add_header Access-Control-Allow-Headers "DNT,User-Agent,X-Requested-With,Content-Type";

XSSおよびクリックジャッキング防护

add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options SAMEORIGIN;

コンテンツセキュリティポリシー

add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'";

リクエストレート制限

limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;

location /api/ {
    limit_req zone=one burst=20 nodelay;
}

隠しファイルへのアクセス禁止

location ~ /\. {
    deny all;
}

IPホワイトリスト

location /admin/ {
    allow 192.168.1.0/24;
    deny all;
}
ログ設定
6

アクセスログ設定

access_log /var/log/nginx/access.log;

エラーログ設定

error_log /var/log/nginx/error.log warn;

カスタムログフォーマット

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
            '$status $body_bytes_sent "$http_referer" '
            '"$http_user_agent" "$http_x_forwarded_for"';

JSON形式ログ

log_format json escape=json '{"time":"$time_iso8601","ip":"$remote_addr","method":"$request_method","uri":"$uri","status":$status}';

アクセスログの無効化

access_log off;

条件ログ(エラーのみ記録)

map $status $loggable {
    ~^[23] 0;
    default 1;
}
access_log /var/log/nginx/access.log combined if=$loggable;
パフォーマンス最適化
5

ファイルディスクリプタキャッシュ

open_file_cache max=1000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;

マルチ接続受信とepollの有効化

events {
    multi_accept on;
    use epoll;
}

FastCGIキャッシュ

fastcgi_cache_path /var/cache/nginx/fastcgi levels=1:2 keys_zone=fastcgi:10m;

location ~ \.php$ {
    fastcgi_cache fastcgi;
    fastcgi_cache_valid 200 1h;
}

接続数制限

limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_conn addr 100;

タイムアウト最適化

client_body_timeout 12;
client_header_timeout 12;
send_timeout 10;

📖ツール紹介

Nginx配置速查は、Web開発者および運用担当者向けに設計されたNginxの設定の迅速な参照ツールです。基本設定から高度な最適化まで、すべての一般的な設定断片をカバーし、機能別に整理されており、迅速な検索とワンクリックコピーが可能です。Nginx初心者でも経験豊富な運用エンジニアでも、必要な設定コードをすぐに見つけることができます。

機能の特徴

1
10の大分類で、Nginxのすべての一般的な設定シナリオをカバー
2
60以上の一般的な設定断片を、基礎から高度まで網羅
3
キーワード検索に対応し、必要な設定を迅速に特定
4
ワンクリックで設定コードをコピーし、作業効率を向上
5
明確な中国語説明で、理解しやすく学習しやすい
6
分類別閲覧とフィルタリングで、関連設定をすばやく見つける
7
レスポンシブデザインで、モバイル端末での閲覧もサポート
8
ローカルで実行可能で、インターネット接続なしでも使用可能

よくある質問

🔗関連ツール

Cron式解析ツール

Cron式の文法を検証し、今後実行される時刻をプレビューします。

開発者ツール
今すぐ使用

JSONをCSVへ変換

JSONデータをCSV形式に変換

変換ツール
今すぐ使用

JSONをYAMLに変換

JSONデータをYAML形式に変換する

変換ツール
今すぐ使用

JSONをXMLへ変換するツール

JSONデータをXML形式に変換する

変換ツール
今すぐ使用

YAMLをJSONへ

YAML設定をJSON形式データへ変換

変換ツール
今すぐ使用

JSONフォーマッター

JSONデータの整形・検証・圧縮

JSON実用ツール
今すぐ使用

JSONの可視化

ツリー構造でJSONデータを表示

JSON実用ツール
今すぐ使用

JSONデータ生成器

テスト用のモックJSONデータを生成します。

JSON実用ツール
今すぐ使用

i18n JSON 翻訳ツール

JSON言語ファイル全体を一括翻訳します。基本の内容を貼り付け、ターゲット言語を選択すると、ツールは平坦化されたキーを使用して OpenRouter API を呼び出します。

JSON実用ツール
今すぐ使用

JSON差异对比

比较两个JSON数据的差异

JSON実用ツール
今すぐ使用

QRコード生成器

カスタムQRコード画像を生成する

画像ツール
今すぐ使用

SVGプレースホルダー画像生成器

カスタムSVGプレースホルダー画像を生成

画像ツール
今すぐ使用

Base64画像変換ツール

画像とBase64エンコードの相互変換ツール

画像ツール
今すぐ使用

UUIDジェネレータ

UUIDを一括生成

ジェネレーターツール
今すぐ使用

パスワード生成器

安全で信頼性の高いランダムパスワードを生成

ジェネレーターツール
今すぐ使用

Base64 エンコード・デコード

Base64 文字列のエンコードとデコードツール

テキストツール
今すぐ使用

URL エンコード/デコード

URL文字列のエンコードとデコードツール

テキストツール
今すぐ使用

MD5ハッシュ生成器

MD5ハッシュ値を生成するツール

暗号化ツール
今すぐ使用

SHA256ハッシュ生成器

SHA256ハッシュ値を生成するツール

暗号化ツール
今すぐ使用

SHA1ハッシュ生成器

SHA1ハッシュ値を生成するツール

暗号化ツール
今すぐ使用

Hexエンコード・デコードツール

16進数文字列のエンコード/デコードツール

暗号化ツール
今すぐ使用

バイナリエンコードデコーダ

2進数文字列エンコード/デコードツール

暗号化ツール
今すぐ使用

AES暗号化/復号器

AES対称暗号アルゴリズムの暗号化/復号ツール

暗号化ツール
今すぐ使用

RSA暗号化・復号器

RSA非対称暗号アルゴリズムツール

暗号化ツール
今すぐ使用

HMACジェネレーター

HMACメッセージ認証コード生成ツール

暗号化ツール
今すぐ使用

IPアドレス検索

IPアドレスの地理的位置とネットワーク情報を照会します。

ネットワークツール
今すぐ使用

ミリ秒時間変換ツール

ミリ秒タイムスタンプと yyyy-MM-dd HH:mm:ss 文字列の間で変換します。

時間ツール
今すぐ使用
現在 27 件のツールを表示しています。利用可能なツールは合計で 28 件です。
    Nginx設定クイックリファレンス - 一般的な設定のすばやい参照 - IT Tools Collection