Guide

Status 301 - Moved Permanently

Come effettuare un redirect 301 di una pagina web

Cambiare l'indirizzo di una pagina già indicizzata dai motori di ricerca, comporta solitamente un peggioramento del ranking della pagina stessa. L'intestazione ​(header HTTP) 301 Moved Permanently, ​ che notifica sia al bot del motore di ricerca che al browser lo spostamento definitivo di una pagina, consente di preservare il ranking. Di seguito i metodi più comuni per implementarla.

  • reindirizzamento tramite ASP

    Supponiamo di voler sostituire nel sito www.nomedominio.it la pagina vecchiapagina.asp con la pagina nuovapagina.asp. Per fare in modo che la vecchia pagina risponda con un redirect 301 verso la nuova pagina, è sufficiente sostituire il codice di vecchiapagina.asp con il seguente:

    vecchiapagina.asp

    <%
    Response.Status = "301 Moved Permanently"
    Response.AddHeader "Location", "http://www.nomedominio.it/nuovapagina.asp"
    %>
  • reindirizzamento tramite PHP

    Supponiamo di voler sostituire nel sito www.nomedominio.it la pagina vecchiapagina.php con la pagina nuovapagina.php. Per fare in modo che la vecchia pagina risponda con un redirect 301 verso la nuova pagina, è sufficiente sostituire il codice di vecchiapagina.php con il seguente:

    vecchiapagina.php

    <?php header("HTTP/1.1 301 Moved Permanently");
    header("Location: http://www.nomedominio.it/nuovapagina.php");
    exit();
    ?>
  • reindirizzamento tramite .htaccess

    Supponiamo di voler sostituire nel sito www.nomedominio.it la pagina vecchiapagina.html con la pagina nuovapagina.html. Per fare in modo che la vecchia pagina risponda con un redirect 301 verso la nuova pagina, è sufficiente aggiungere nel file .htaccess la seguente riga:

    .htaccess

    RewriteEngine On
    RewriteRule ^vecchiapagina.html$ http://%{HTTP_HOST}/nuovapagina.html [R=301,L]
    

    Tramite .htaccess è possibile reindirizzare un'intera cartella o addirittura un intero sito, come mostrato qui di seguito:

    .htaccess

    RewriteEngine On
    RewriteRule ^(.*)$ http://%{HTTP_HOST}/nuovapagina.html [R=301,L]
    

NOTE

  • L'indirizzo di destinazione del redirect non deve necessariamente appartenente allo stesso dominio.
  • Utilizzando il file .htaccess è possibile effettuare un redirect 301 verso qualsiasi URL e qualsiasi documento.