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
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;
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 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; }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;
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;
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;
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 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 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;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.
Funzionalità.
❓Domande frequenti
🔗Strumenti correlati
Analizzatore di espressioni Cron
Controlla la sintassi Cron e anteprima dei prossimi orari di esecuzione.
JSON in CSV
Convertire i dati JSON in formato CSV
JSON a YAML
Convertire i dati JSON in formato YAML
Convertitore JSON→XML
Trasformare i dati JSON nel formato XML
YAML → JSON
Convertire la configurazione YAML in dati JSON
Formatatore JSON
Formattazione, convalida e compressione dei dati JSON
Visualizzazione JSON
Mostra i dati JSON in forma ad albero
Generatore di dati JSON.
Genera dati JSON simulati per i test.
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.
Confronto delle differenze JSON.
Confrontare le differenze tra due dati JSON.
Generatore di codici QR
Genera un'immagine QR personalizzata
Generatore di immagini segnaposto SVG
Genera immagine segnaposto SVG personalizzata
Convertitore di immagini Base64
Strumento di conversione reciproca tra immagini e codifica Base64.
Generatore di UUID
Generazione di UUID unici in batch
Generatore di password
Genera password casuali sicure e affidabili.
Codifica e decodifica Base64
Strumento di codifica e decodifica di stringhe Base64
Codifica/decodifica degli URL
Strumento di codifica e decodifica delle stringhe URL
Generatore di hash MD5
Strumento per generare hash MD5
Generatore di hash SHA256
Strumento per generare hash SHA256
Generatore di hash SHA1
Strumento per generare hash SHA1
Decodificatore/Encodificatore esadecimale
Strumento di codifica/decodifica di stringhe esadecimali
Codificatore/decodificatore binario
Strumento di codifica e decodifica di stringhe binarie
Strumento di cifratura/decifratura AES
Strumento di cifratura/decifratura basato sull'algoritmo AES a chiave simmetrica
Strumento di cifratura/decifratura RSA
Strumento di cifratura RSA asimmetrica
Generatore HMAC
Generatore di codice di autenticazione HMAC
Ricerca dell'indirizzo IP
Determinare la posizione geografica e le informazioni di rete dell'indirizzo IP.
Convertitore di millisecondi
Conversione tra timestamp in millisecondi e stringa yyyy-MM-dd HH:mm:ss.