Come reindirizzare HTTP a HTTPS su un server web Linux

Il passaggio del vostro sito web all’HTTPS è fondamentale per proteggere i dati degli utenti e aumentare la fiducia, oltre a migliorare la SEO e a soddisfare i moderni standard web. Questa guida semplifica il processo di reindirizzamento di tutto il traffico HTTP verso HTTPS sui server Linux che utilizzano Apache o Nginx. Con esempi pratici e suggerimenti, garantirete ai vostri visitatori un’esperienza sicura e senza interruzioni.

Perché reindirizzare a HTTPS?

Il passaggio a HTTPS (SSL/TLS) garantisce:

  • Comunicazione criptata tra gli utenti e il vostro server
  • Miglioramento del posizionamento SEO (Google preferisce HTTPS)
  • Indicatori di fiducia come il simbolo del lucchetto nel browser
  • Conformità ai moderni standard web

Una volta installato un certificato SSL, il passo successivo è quello di instradare tutto il traffico attraverso il protocollo sicuro HTTPS.

Apache: Reindirizzare HTTP a HTTPS

Se il vostro server utilizza Apache, potete configurare il reindirizzamento come segue.

Passo 1: Attivare il modulo di riscrittura

Assicurarsi che mod_rewrite sia attivato:

sudo a2enmod rewrite
sudo systemctl neustart apache2

Passo 2: Aggiornare la configurazione dell’host virtuale

Open your HTTP(port 80) File di configurazione dell’host virtuale:

sudo nano /etc/apache2/sites-available/000-default.conf

Quindi inserire questo all’interno di block:

RewriteEngine Ein
RewriteCond %{HTTPS} aus
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Salvare e uscire dal file, quindi riavviare Apache:

sudo systemctl restart apache2

Nginx: Reindirizzare HTTP a HTTPS

Se il vostro server utilizza Nginx, il reindirizzamento viene eseguito nel blocco server del sito web.

Passo 1: modificare il file di configurazione di Nginx

sudo nano /etc/nginx/sites-available/default

Passo 2: aggiungere un blocco di reindirizzamento

Aggiungere questo block sopra il server block esistente per HTTPS:

server {
    listen 80;
    server_name ihredomain.de www.yourdomain.com;

    return 301 https://$host$request_uri;
}

Sostituire yourdomain.com con il proprio nome di dominio. Quindi testate e ricaricate:

sudo nginx -t
sudo systemctl reload nginx

Opzionale: Reindirizzamento da www a non-www (o viceversa)

È anche possibile combinare l’applicazione di HTTPS con la canonicalizzazione dei domini.

Esempio: Reindirizzamento da www a non-www (con HTTPS) in Nginx:

server {
    listen 80;
    server_name www.yourdomain.com;

    return 301 https://yourdomain.com$request_uri;
}

Testare il reindirizzamento

Una volta apportate le modifiche, testatele:

Conclusione

Il reindirizzamento da HTTP a HTTPS sul vostro server Linux è un modo semplice per migliorare la sicurezza e la fiducia degli utenti. Configurando Apache o Nginx come indicato, facendo dei test con esempi pratici e seguendo le migliori pratiche, si garantisce una transizione senza problemi verso un sito web sicuro. Mantenete valido il vostro certificato SSL e monitorate i reindirizzamenti per mantenere una presenza online professionale e SEO-friendly.