Skip to content

In questa breve guida di mostro la regola da inserire nel virtual host di Nginx per redirezionare il traffico da dominio senza www al dominio www, sia sotto protocollo HTTP che HTTPS. Dato che il www è molto diffuso, questa regola dovrebbe essere ben conosciuta.

Quando si configura Nginx per ospitare un nuovo sito web, una cosa da sapere è il dominio preferito, quello che poi va anche definito in Google Search Console.

Scegliere un dominio preferito e redirezionare il traffico della controparte serve ad ottimizzare il crawl budget dei motori di ricerca e, in mancanza di canonical tag, anche l’indicizzazione. Questa regola infatti evita che vengano indicizzati URL con contenuti duplicati su URL con e senza www.

Un web server con dominio preferito che utilizza il www, deve gestire anche il traffico verso URL senza www, in altre parole se il sito è www.evemilano.com ed interrogo evemilano.com, il web server deve redirezionare il traffico verso www.evemilano.com.

Per impostare la regola di redirect 301 da dominio non www verso dominio con www puoi impostare due blocchi server in questo modo:

#blocco di redirect
server {
	listen 80;
        listen [::]:80;
	server_name evemilano.com;
	rewrite ^(.*) http://evemilanooriginal.local$1 permanent;
}

#blocco default
server {
        listen       80;
        listen [::]:80;
        server_name  www.evemilano.com;
        ...
}

Il blocco usa tre semplici comandi:

  • listen: il server è in ascolto sulla porta 80. Se il tuo sito usa il protocollo HTTPS userà la porta 443.
  • server_name: il dominio a cui applicare la regola che segue, in questo caso senza www.
  • rewrite: regola di redirect 301 con dominio di destinazione.

Questo blog usa il protocollo HTTPS, quindi nel mio caso uso questa regola:

#blocco di redirect HTTP
server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;
    server_name www.evemilano.com evemilano.com;
    return 301 https://www.evemilano.com$request_uri;
}

#blocco di redirect IP
server {
    listen 80;
    server_name 82.196.0.237;
    return 301 $scheme://www.evemilano.com$request_uri;
}

#blocco default HTTPS
server {	
    # Gestione SSL
    listen 443 ssl;
    ...
}

Come avrai notato ho creato il primo blocco unico per www e non www, che redireziona ad HTTPS con www. Inoltre ho inserito il secondo blocco per redirezione l’IP verso il dominio preferito, non si sa mai. Infine trovi il blocco default, in ascolto sulla porta 443 per il protocollo HTTPS.

Per dubbi o domande lascia un commento.

Articoli correlati

Autore

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Ultimi articoli aggiornati

Richiedi un preventivo SEO e Google Ads

Porta il tuo sito web al livello successivo con l’expertise di EVE Milano. La nostra agenzia di Search Marketing ha ricevuto oltre 1130 richieste di preventivo, un segnale chiaro della fiducia che imprenditori e manager, come te, ripongono nella nostra specializzazione tecnica e verticale nella SEO e PPC. Se la tua organizzazione cerca competenze specifiche per emergere nei risultati di Google, noi siamo pronti a fornire quel valore aggiunto. Affidati alla nostra esperienza per fare la differenza.
Richiedi un preventivo

Non perderti altre guide, iscriviti per ricevere un avviso mensile con gli aggiornamenti del blog!

Iscriviti alla newsletter!

Informativa sui cookies

Noi e terze parti selezionate utilizziamo cookie o tecnologie simili per finalità tecniche e, con il tuo consenso, anche per le finalità di esperienza e misurazione come specificato nella cookie policy. Puoi liberamente prestare, rifiutare o revocare il tuo consenso, in qualsiasi momento, accedendo al pannello delle preferenze. Il rifiuto del consenso può rendere non disponibili le relative funzioni. Usa il pulsante “Accetta” per acconsentire. Usa il pulsante “Rifiuta” per continuare senza accettare.