Capire Nginx
EGPHP usa Nginx (si pronuncia «engine-x») come server web. Nginx è noto per le alte prestazioni, la stabilità e il consumo ridotto di risorse. A differenza di Apache non usa i file .htaccess.
Niente .htaccess: Nginx non supporta i file .htaccess. Le stesse funzioni si ottengono dai suoi file di configurazione.
Aprire le impostazioni di Nginx
- Accedi a EGPNL
- Vai su Domini
- Fai clic sul tuo dominio
- Scegli Configurazione Nginx oppure Impostazioni avanzate
Le configurazioni Nginx più comuni
Reindirizzare da HTTP a HTTPS
Obbliga tutto il traffico a passare da HTTPS:
if ($scheme != "https") {
return 301 https://$host$request_uri;
}
Reindirizzare da www al dominio senza www
if ($host ~* ^www\.(.*)) {
return 301 https://$1$request_uri;
}
Reindirizzare dal dominio senza www a www
if ($host !~* ^www\.) {
return 301 https://www.$host$request_uri;
}
Permalink leggibili di WordPress
Servono per gli indirizzi di WordPress adatti ai motori di ricerca:
location / {
try_files $uri $uri/ /index.php?$args;
}
Se usi WordPress: EGPNL configura da sé i permalink quando aggiungi un sito WordPress. Non devi fare nulla a mano.
Intestazioni di sicurezza
Aggiungi le intestazioni di sicurezza per proteggere il sito:
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
Configurazione della cache
Attiva la cache del browser per i file statici:
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2|woff|ttf)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
Compressione gzip
Attiva la compressione gzip per caricare le pagine più in fretta (di norma è già attiva):
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml;
gzip_min_length 1000;
Pagine di errore personalizzate
Imposta pagine personalizzate per gli errori 404 e 500:
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
Bloccare l'accesso
Bloccare determinati IP
deny 123.45.67.89;
deny 98.76.54.0/24;
Bloccare determinati file
location ~ /\.(htaccess|htpasswd|git|svn) {
deny all;
}
Proteggere una cartella con password
location /admin {
auth_basic "Restricted";
auth_basic_user_file /path/to/.htpasswd;
}
Riscritture degli indirizzi
Riscrivi gli indirizzi senza reindirizzare:
# Rewrite old URL to new URL internally
rewrite ^/old-page$ /new-page last;
# Redirect old URL to new URL (301)
rewrite ^/old-url$ /new-url permanent;
Configurazione di PHP
Regola le impostazioni di PHP per il tuo dominio:
location ~ \.php$ {
fastcgi_param PHP_VALUE "
upload_max_filesize=64M
post_max_size=64M
max_execution_time=300
";
}
Attenzione: una configurazione sbagliata di Nginx può rendere irraggiungibile il sito. Salva sempre una copia della configurazione attuale prima di modificarla.
Provare la configurazione
Dopo aver fatto le modifiche:
- EGPNL controlla la configurazione in automatico
- Se ci sono errori comparirà un avviso
- Correggi gli errori prima di salvare
- A salvataggio riuscito Nginx si ricarica da sé
Questo articolo ti è stato utile?