301: Redirect Permanente

Avendo trasferito il blog dal vecchio dominio a quello nuovo su tophost, necessitavo di comunicare in maniera trasparente sia agli utenti che ai motori di ricerca il cambio di casa…
La soluzione migliore fin da subito mi è sembrata quella fornita dal codice 301, un codice che indica che la vecchia risorsa è stata spostata definitivamente in un nuovo luogo.
Essendo il vecchio sito ospitato su altervista, non ho potuto utilizzare i file htaccess di apache per indicare il cambio di residenza, ho quindi optato per la soluzione offerta da php…

Il codice php che ho utilzzato è semplicemente quello che vedete qui sotto.

Tale istruzione non fa nient’altro che comunicare al browser dell’utente o allo spider del motore di ricerca che la pagina che si sta cercando è stata trasferita in maniera permanente ad un nuovo indirizzo. Mi è stato quindi sufficiente creare una pagina di nome index.php contenente il codice sopraesposto e metterla nel vecchio spazio di hosting affinchè tutte le richieste venissero reindirizzate verso il nuovo dominio.
Eccovi un link interessante che riassume le varie tecniche di redirect search engine friendly, fornite da php, asp, apache, iss, etc.

Purtroppo la soluzione da me adottata non è la migliore possibile, in quanto tutte le pagine che si cerca di accedere sul vecchio dominio vengono reindirizzate ad un’unica su quello nuovo, la homepage
La soluzione migliore nel mio caso sarebbe quella fornita dall’accoppiata mod_rewrite e codice 301, il tutto cablato all’interno di un file htaccess, in modo da trasferire in maniera trasparente un sito da uno spazio all’altro, in quanto tutte le vecchie pagine vengono reindirizzate sulle relative pagine contenute nel nuovo dominio!
Come detto sopra però altervista non permette l’utilizzo dei file htaccess, quindi ho dovuto scartare questa soluzione e ripiegare su quella offerta dal php.
Sto però pensando se non si riesca a fare qualcosa di simile anche tramite php… per ora ho solo qualche idea, vedrò di lavorarci sopra!

Cito solamente per evitare che qualcuno lo utilizzi il redirect tramite html: meta http-equiv=”refresh”.
Tale metodo è vivamente sconsigliato in quanto non è visto di buon occhio dai motori di ricerca, dato l’uso poco ortodosso che ne hanno fatto (e ne fanno) spammer e webmaster. Inoltre è una soluzione poco elegante e limitata ad una sola singola pagina, oltre a creare disorientamento negli utenti.

ilpestifero

5 Risposte al “301: Redirect Permanente”

  1. pregnantboy scrive:

    Interessante, presto mi servirà anche a me.

  2. ilPestifero scrive:

    Ho trovato una soluzione migliore, magari ci sentiamo per mail o su skype settimana prossima (questa settimana non riesco), così ti illustro il tutto…

  3. Franciov scrive:

    E non potresti postarla questa soluzione migliore? :P

  4. ienabellamy scrive:

    già, non potresti postarla ? son passati 2 anni XD

  5. MTBVulture scrive:

    Salve,
    purtroppo sono incappato in un hosting abbastanza “pessimo” ed ho un piccolo problema:
    tutte le pagine senza “www” non vengono caricate.
    Allora ho fatto questo:
    Ho rediretto i DNS * e @ del mio sito sul mio ip statico dove sta in esecuzione xampp always on così da intercettare le richieste, e poi ho fatto una index.php che mi trasforma le richieste senza www in richieste con www tramite il codice:

    putroppo non funziona come dovrebbe (a volte va, altre no).
    A me servirebbe un “redirect wild card” da “http://sito.ext/*” a “http://www.sito.ext/*” per qualunque valore di * in PHP (file, sottocartelle, variabili), ed ho a disposizione tutto apache per farlo, ma non so come (php, htaccess…).
    Mi potete aiutare?
    Sarebbe una grande cosa se potesse essere “indipendente” dal dominio, cioè ogni richiesta del tipo sito1.ext, sito2.ext… si trasformi automaticamente in http://www.sito1…, anche se la cosa non è fondamentale.
    Grazie.

    Dimenticavo: ovviamente il sito NON si trova sul mio pc, devo solo “reindirizzare” la richiesta.

Inserisci un commento