Redirect 301

impostare redirect 301

Configurare i Redirect 301

Mediante i redirect 301  indichiamo agli spider che l’URL è stata trasferita in maniera permanente verso un nuovo indirizzo, quindi indichiamo un reindirizzamento lato server definitivo da un indirizzo ad un altro.

Queste regole devono essere configurare correttamente all’interno del file .htaccess.

Questi redirect sono molto utilizzati in ambito SEO, infatti permettono di reindirizzare una pagina oppure un dominio senza perdere la forza e il posizionamento acquisito dalla vecchia pagina.

Anche se non è proprio così, infatti si perde qualcosa in termini di juice acquisito della pagina, se non imposti correttamente queste regole potrebbe capitarti di creare un redirect loop, in questo caso ti verrà visualizzato il messaggio di errore: catena di redirect.

redirect 301

 Quando è necessario impostare le regole di Redirect delle URL? 

  • Redirect da vecchio a nuovo dominio;

  • Redirect da un dominio di secondo livello verso un dominio di primo livello;

  • Reindirizzamento da una sotto cartella ad un’altra sotto cartella;

  • Redirect da dominio con www a dominio senza www;

  • Redirect da dominio in HTTP verso dominio in HTTPS e viceversa;

  • Redirect di vecchie URL verso nove URL.

Nel caso di ristrutturazione del sito, se non facciamo i redirect tutti i backlink  che riceveva la vecchia pagina verrebbero persi e quindi la forza che aveva la vecchia pagina verrebbe persa, con il redirect 301 il link juice, viene trasmesso quasi interamente alla nuova pagina.

Effettuando un redirect 301, l’utente che cliccherà sui link o sulla SERP verrà reindirizzato al nuovo url.

Per evitare che ciò non accada ci basterà inserire all’interno del file .htaccess la seguente regola:

Redirect 301 /page.html https://sito.it/npage.html

In alterativa si potrebbe utilizzare la seguente regola (è equivalente alla regola sopra indicata):

RedirectMatch ^url$ http://sito.it/newurl

Redirect da URL senza WWW ad URL con WWW e viceversa

Per google l’url con www è diversa da un url senza www.

Vediamo una regola per effettuare i redirect da un url senza www ad un url con www;

RewriteCond %{HTTP_HOST} ^sito\.it [NC]

RewriteRule ^(.*) http://www.sito.it/$1 [R=301,L]

Viceversa da un URL con www ad un URL senza www:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

 Altre regole di Redirect 301

Se volessimo ridirigere il traffico di tutto il sito ad eccezione di un unica cartella:

RewriteEngine On

RewriteBase /
RewriteCond %{REQUEST_URI} !^/cartella_da_escludere
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

 Redirect di un intera cartella:

RedirectMatch 301 ^/cartella/(.*) http:/ /www.miosito.it/nuovacartella

Se vogliamo negare la scansione di tutte le risorse a GoogleBot, facendo restituire al server uno status code 403 (access forbidden) ogni volta che arriva l’user agent di google e richiede una risorsa del sito.

In questo caso attenti al cloaking:

RewriteEngine On

RewriteCond %{http_USER_AGENT} Googlebot

#RewriteCond %{REQUEST_URI} ^/pagina([0-9]*)\.html$

(ulteriore regola, se decommentiamo, per essere eseguita l’isturuzione di RewriteRule devono essere soddisfatte entrambe le RewriteCond)

RewriteRule . – [F,L]

Link per approfondire l’argomento

 Differenza tra i Redirect 301 e 302

Spesso di sente parla di redirect 302, ma cosa lo differenzia dal redirect 301?

Il redirect 302 è un redirect temporaneo da utilizzare nel momento un cui la pagina è stata temporaneamente rinominata e cancellata e che verrà poi reintegrata.

Lo spider non cancellerà dagli indici la pagina, con questo tipo di redirect non viene passato link juice alla pagina di destinazione.

Per impostare questa regola basta utilizzare la stessa sintassi delle regole sopra descritte, sostituendo 301 con 302.

Consulente SEO