Registro delle modifiche

Tabella di riferimento rapido per la configurazione di Nginx

Tabella di riferimento rapido per frammenti di configurazione Nginx comuni, per trovare e copiare rapidamente il codice di configurazione

Configurazione di base
7

Imposta automaticamente il numero di processi di lavoro (di solito uguale al numero di core della CPU)

worker_processes auto;

Imposta il numero massimo di connessioni per processo di lavoro

events {
    worker_connections 1024;
}

Includi la configurazione dei tipi MIME

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

Abilita la trasmissione efficiente dei file

sendfile on;
tcp_nopush on;
tcp_nodelay on;

Imposta il tempo di timeout per le connessioni persistenti

keepalive_timeout 65;

Imposta la dimensione massima del corpo della richiesta del client

client_max_body_size 100M;

Nasconde il numero di versione di Nginx

server_tokens off;
Blocco Server
6

Configurazione di base del blocco Server

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

Configura più domini

server_name example.com www.example.com;

Configura domini con caratteri jolly

server_name *.example.com;

Imposta il server predefinito

listen 80 default_server;

Ascolta l'indirizzo IPv6

listen [::]:80;

Imposta la directory radice o un alias

root /var/www/html;
# Oppure utilizzare alias
alias /var/www/files/;
Corrispondenza Location
7

Corrispondenza esatta del percorso

location = /path {
    # Corrispondenza esatta
}

Corrispondenza in prefisso del percorso

location /api/ {
    # Corrispondenza in prefisso
}

Corrispondenza con espressione regolare

location ~ \.php$ {
    # Corrispondenza con espressione regolare (distingue maiuscole da minuscole)
}

Corrispondenza con espressione regolare senza distinzione tra maiuscole e minuscole

location ~* \.\(jpg|jpeg|png|gif)$ {
    # Corrispondenza con espressione regolare (non distingue maiuscole da minuscole)
}

Matcha prefisso prioritario (precede le espressioni regolari)

location ^~ /images/ { # Matcha prefisso prioritario }

Ordine di tentativo dei file (comune per le applicazioni SPA)

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

Accesso consentito solo alle richieste interne

location /internal/ { internal; }
Proxy inverso
7

Configurazione di base del proxy inverso

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

Impostazione degli header della richiesta proxy

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;

Configurazione del proxy WebSocket

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

Definizione del gruppo di server upstream

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

Configurazione del bilanciamento del carico

upstream backend { least_conn; # o ip_hash; server 127.0.0.1:3000; server 127.0.0.1:3001; }

Impostazioni dei timeout del proxy

proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s;

Configurazione della buffer del proxy

proxy_buffering on; proxy_buffer_size 4k; proxy_buffers 8 4k;
SSL/HTTPS
7

Configurazione di base SSL

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

Impostazione della versione del protocollo SSL

ssl_protocols TLSv1.2 TLSv1.3;

Impostazione delle suite di cifratura

ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256; ssl_prefer_server_ciphers on;

Cache della sessione SSL

ssl_session_cache shared:SSL:10m; ssl_session_timeout 1d;

Ridirezione HTTP a HTTPS

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

Abilita HSTS

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

Abilita OCSP Stapling

ssl_stapling on; ssl_stapling_verify on; resolver 8.8.8.8 8.8.4.4 valid=300s;
Configurazione della cache
5

Caching delle risorse statiche

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

Disabilita il caching

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

Configurazione del caching del proxy

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

Abilita ETag

etag on;

Abilita richieste condizionali

if_modified_since before;
Compressione Gzip
4

Configurazione di base della compressione Gzip

gzip on; gzip_vary on; gzip_min_length 1024; gzip_comp_level 6;

Impostazione dei tipi MIME da comprimere

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

Abilita la compressione per le richieste proxy

gzip_proxied any;

Abilita i file pre-compressi

gzip_static on;
Configurazione di sicurezza
6

Configurazione 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";

Protezione contro XSS e clickjacking

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

Politica di sicurezza dei contenuti

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

Limitazione della velocità delle richieste

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

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

Blocco dell'accesso ai file nascosti

location ~ /\. {
    deny all;
}

Whitelist IP

location /admin/ {
    allow 192.168.1.0/24;
    deny all;
}
Configurazione dei log
6

Configurazione del log di accesso

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

Configurazione del log di errore

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

Formato personalizzato del log

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

Log in formato JSON

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

Disabilita il log di accesso

access_log off;

Log condizionale (registra solo errori)

map $status $loggable {
    ~^[23] 0;
    default 1;
}
access_log /var/log/nginx/access.log combined if=$loggable;
Ottimizzazione delle prestazioni
5

Cache dei descrittori di file

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

Abilita l'accettazione multipla delle connessioni e epoll

events {
    multi_accept on;
    use epoll;
}

Cache 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;
}

Limitazione del numero di connessioni

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

Ottimizzazione dei timeout

client_body_timeout 12;
client_header_timeout 12;
send_timeout 10;

📖Panoramica dello strumento.

Nginx Config Quick Reference è uno strumento di riferimento rapido per la configurazione di Nginx, progettato per sviluppatori web e amministratori di sistema. Copre tutti i frammenti di configurazione comuni, dalla configurazione di base alle ottimizzazioni avanzate, organizzati per funzionalità, con supporto per la ricerca rapida e la copia con un solo clic. Sia che tu sia un principiante di Nginx o un ingegnere di sistema esperto, puoi trovare rapidamente il codice di configurazione di cui hai bisogno qui.

Funzionalità.

1
10 grandi categorie che coprono tutte le scene di configurazione comuni di Nginx
2
Oltre 60 frammenti di configurazione comuni, inclusi da base a avanzato
3
Supporto per la ricerca per parole chiave, per trovare rapidamente la configurazione desiderata
4
Copia con un solo clic del codice di configurazione, per aumentare l'efficienza del lavoro
5
Spiegazioni cinesi chiare, facili da comprendere e imparare
6
Navigazione e filtraggio per categorie, per trovare rapidamente le configurazioni correlate
7
Progettazione responsiva, supporto per la visualizzazione su dispositivi mobili
8
Esecuzione locale, senza necessità di connessione a Internet

Domande frequenti

🔗Strumenti correlati

Analizzatore di espressioni Cron

Controlla la sintassi Cron e anteprima dei prossimi orari di esecuzione.

Strumenti per sviluppatori
Usa subito

JSON in CSV

Convertire i dati JSON in formato CSV

Convertitore
Usa subito

JSON a YAML

Convertire i dati JSON in formato YAML

Convertitore
Usa subito

Convertitore JSON→XML

Trasformare i dati JSON nel formato XML

Convertitore
Usa subito

YAML → JSON

Convertire la configurazione YAML in dati JSON

Convertitore
Usa subito

Formatatore JSON

Formattazione, convalida e compressione dei dati JSON

Strumenti JSON utili
Usa subito

Visualizzazione JSON

Mostra i dati JSON in forma ad albero

Strumenti JSON utili
Usa subito

Generatore di dati JSON.

Genera dati JSON simulati per i test.

Strumenti JSON utili
Usa subito

Traduttore JSON i18n

Traduci in una sola volta l'intero file JSON delle lingue. Incolla i contenuti di base, scegli la lingua di destinazione; lo strumento utilizzerà chiavi appiattite per richiamare la tua OpenRouter API.

Strumenti JSON utili
Usa subito

Confronto delle differenze JSON.

Confrontare le differenze tra due dati JSON.

Strumenti JSON utili
Usa subito

Generatore di codici QR

Genera un'immagine QR personalizzata

Strumenti per immagini
Usa subito

Generatore di immagini segnaposto SVG

Genera immagine segnaposto SVG personalizzata

Strumenti per immagini
Usa subito

Convertitore di immagini Base64

Strumento di conversione reciproca tra immagini e codifica Base64.

Strumenti per immagini
Usa subito

Generatore di UUID

Generazione di UUID unici in batch

Strumenti di generazione
Usa subito

Generatore di password

Genera password casuali sicure e affidabili.

Strumenti di generazione
Usa subito

Codifica e decodifica Base64

Strumento di codifica e decodifica di stringhe Base64

Strumenti di testo
Usa subito

Codifica/decodifica degli URL

Strumento di codifica e decodifica delle stringhe URL

Strumenti di testo
Usa subito

Generatore di hash MD5

Strumento per generare hash MD5

Strumenti di crittografia
Usa subito

Generatore di hash SHA256

Strumento per generare hash SHA256

Strumenti di crittografia
Usa subito

Generatore di hash SHA1

Strumento per generare hash SHA1

Strumenti di crittografia
Usa subito

Decodificatore/Encodificatore esadecimale

Strumento di codifica/decodifica di stringhe esadecimali

Strumenti di crittografia
Usa subito

Codificatore/decodificatore binario

Strumento di codifica e decodifica di stringhe binarie

Strumenti di crittografia
Usa subito

Strumento di cifratura/decifratura AES

Strumento di cifratura/decifratura basato sull'algoritmo AES a chiave simmetrica

Strumenti di crittografia
Usa subito

Strumento di cifratura/decifratura RSA

Strumento di cifratura RSA asimmetrica

Strumenti di crittografia
Usa subito

Generatore HMAC

Generatore di codice di autenticazione HMAC

Strumenti di crittografia
Usa subito

Ricerca dell'indirizzo IP

Determinare la posizione geografica e le informazioni di rete dell'indirizzo IP.

Strumenti di rete
Usa subito

Convertitore di millisecondi

Conversione tra timestamp in millisecondi e stringa yyyy-MM-dd HH:mm:ss.

Strumenti temporali
Usa subito
Mostra 27 strumenti, in totale 28 disponibili
    Tabella di riferimento per le configurazioni Nginx - Riferimento rapido per le configurazioni comuni - IT Tools Collection