Introduzione
L’indirizzamento del traffico da una versione “www” di un dominio alla sua versione senza “www” (o viceversa) è una pratica comune nell’ambito della gestione di siti web. Questa operazione è spesso indispensabile per assicurare l’uniformità dell’indirizzo del sito, ottimizzare la SEO e prevenire la duplicazione di contenuti. In questa guida, analizzeremo passo dopo passo come effettuare il rindirizzamento da “www” a “non-www” utilizzando Nginx su un sistema operativo CentOS 7.
Nginx è un server web open source di grande efficacia, ampiamente impiegato per l’hosting di siti web e applicazioni. È rinomato per le sue prestazioni elevate, la sua stabilità e le sue versatili capacità di riscrittura degli URL.
Requisiti Preliminari
Prima di iniziare, è essenziale assicurarsi di avere a disposizione i seguenti elementi:
- Un server CentOS 7 con Nginx già installato.
- Accesso con privilegi di root o sudo.
- Un editor di testo, come nano o vi.
Configurazione di Nginx
1. Accesso al File di Configurazione di Nginx
Utilizzare l’editor di testo preferito per aprire il file di configurazione principale di Nginx:
sudo nano /etc/nginx/nginx.conf
2. Inserimento delle Direttive di Reindirizzamento
All’interno del file di configurazione, individuare la sezione server
relativa al dominio che si intende reindirizzare. Aggiungere le seguenti direttive all’interno di tale sezione:
server {
# ... (altre configurazioni, se presenti) ...
# Reindirizzamento da www a non-www
if ($host ~* ^www\.(.+)$) {
return 301 https://$1$request_uri;
}
# ... (altre configurazioni, se presenti) ...
}
Questa configurazione provvede a reindirizzare tutte le richieste indirizzate a www.dominio.com
verso dominio.com
. L’header di risposta HTTP viene impostato su 301 (Moved Permanently)
, segnalando al browser che il reindirizzamento è permanente.
3. Salvataggio e Riavvio di Nginx
Una volta apportate le modifiche necessarie al file di configurazione, salvare il file e riavviare Nginx per applicare le nuove impostazioni:
sudo systemctl restart nginx
Verifica del Reindirizzamento
Per accertarsi che il reindirizzamento sia stato implementato correttamente, accedere al dominio www.dominio.com
tramite il browser. Si dovrebbe essere indirizzati automaticamente al dominio senza “www”. È inoltre possibile utilizzare uno strumento come curl per analizzare l’header di risposta HTTP:
curl -I https://www.dominio.com
L’output dovrebbe essere simile a:
HTTP/2 301
Location: https://dominio.com/
Conclusioni
In questo articolo, abbiamo illustrato come configurare un reindirizzamento da “www” a “non-www” con Nginx su CentOS 7. Seguendo le istruzioni fornite, sarà possibile impostare il server web in modo da assicurare che il traffico venga indirizzato all’indirizzo corretto. Ciò contribuirà a migliorare l’esperienza utente, l’ottimizzazione per i motori di ricerca (SEO) e la coerenza del proprio sito web.
Domande Frequenti (FAQ)
1. Qual è l’utilità di reindirizzare da www a non-www?
I reindirizzamenti sono impiegati per garantire la coerenza degli indirizzi dei siti web, potenziare la SEO, evitare contenuti duplicati e prevenire avvisi di contenuti misti nei browser.
2. Quali sono i codici di stato HTTP comunemente utilizzati per i reindirizzamenti?
I codici di stato HTTP più diffusi per i reindirizzamenti sono:
- 301 (Spostato permanentemente)
- 302 (Trovato)
- 307 (Reindirizzamento temporaneo)
3. Come si configura un reindirizzamento 302 da non-www a www in Nginx?
Per configurare un reindirizzamento 302 da non-www a www, è necessario aggiungere la seguente direttiva nella sezione server
del file di configurazione di Nginx:
if ($host !~* ^www\.(.+)$) {
return 302 https://www.$host$request_uri;
}
4. Come si disabilita il reindirizzamento da www a non-www?
Per disabilitare il reindirizzamento da www a non-www, è sufficiente rimuovere le direttive if
aggiunte al file di configurazione di Nginx.
5. È possibile reindirizzare solo specifiche richieste?
Certamente, è possibile utilizzare la direttiva location
per reindirizzare solamente richieste specifiche. Ad esempio, per reindirizzare solamente le richieste alla home page, è possibile aggiungere le seguenti righe nel file di configurazione di Nginx:
location / {
return 301 https://dominio.com/;
}
6. Il reindirizzamento ha un impatto negativo sulla SEO?
No, i reindirizzamenti 301 sono generalmente ben gestiti dai motori di ricerca e non compromettono la SEO.
7. Cosa fare in caso di malfunzionamento del reindirizzamento?
Verificare attentamente i seguenti aspetti:
- Che le modifiche siano state implementate correttamente nel file di configurazione di Nginx.
- Che il server Nginx sia stato salvato e riavviato.
- Che il browser non abbia memorizzato nella cache la vecchia versione del sito. In questo caso, è necessario svuotare la cache.
8. Esistono alternative a Nginx per il reindirizzamento da www a non-www?
Sì, è possibile ottenere lo stesso risultato tramite Apache o utilizzando un plugin di reindirizzamento per WordPress.