Reindirizzare HTTP a HTTPS in Nginx: Best Practices

Scopri i metodi più efficaci per reindirizzare automaticamente tutto il traffico HTTP verso HTTPS in Nginx, garantendo connessioni sicure per tutti i visitatori.

Il reindirizzamento da HTTP a HTTPS è un passaggio fondamentale per garantire la sicurezza del tuo sito web e migliorare il posizionamento SEO. Ecco come configurarlo correttamente in Nginx.

Configurazione standard

Il metodo più comune consiste nell'utilizzare un blocco server dedicato per la porta 80 che esegue un redirect permanente (301) verso il blocco HTTPS:

server {
    listen 80;
    server_name esempio.it www.esempio.it;
    return 301 https://$host$request_uri;
}

Perché usare il redirect 301?

Il codice di stato 301 Moved Permanently comunica ai motori di ricerca che la risorsa si è spostata definitivamente, trasferendo il valore SEO (link equity) dalla versione non sicura a quella sicura.

Considerazioni sulla sicurezza

Per una protezione ottimale, assicurati di implementare anche l'intestazione HSTS (HTTP Strict Transport Security) nel tuo blocco server HTTPS:

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

Seguendo queste best practice, garantirai una navigazione sicura e affidabile per tutti i tuoi utenti.