Arriva un momento in cui ogni webmaster realizza che uno dei suoi file ha un nome non corretto o che l'arborescenza dei file ha necessità di essere modificata. In questi due casi è piuttosto facile cambiare i link sul sito mentre più complicata risulta la modifica dei link sugli altri siti che rimandano al proprio sito. Il cambio della posizione di una pagina o di un file potrebbe portare a incorrere nel rischio della non lettura della pagina agli utenti interessata o peggio, nel rischio di resettare completamente il SEO della pagina. Fortunatamente esiste una semplice soluzione: "redirection" (reindirizzamento) che lascia inalterata sia la coerenza della navigazione che quella del SEO, anche se l'insieme dei file di un sito è stato spostato.
Le redirection sono degli HTTP header (intestazioni HTTP), e secondo il protocollo HTTP, gli header devono essere inviati prima di ogni altro tipo di contenuto. In altre parole nessun carattere verrà inviato prima di richiamare la funzione header(), questa deve essere imperativamente utilizzata prima di qualunque altro codice HTML.
Per reindirizzare il visitatore verso un'altra pagina (particolarmente utile nei loop condizionali) è sufficiente utilizzare il seguente codice:
<?php Header( `Location: la_mia_pagina.php); ?>
Dove la_mia_pagina.php rappresenta l'indirizzo della pagina verso la quale si vuole reindirizzare. Questo percorso può essere assoluto e può ugualmente possedere dei parametri di forma: la_mia_pagina.php?param1=val1$m2=val2).
Ideale è scegliere il percorso assoluto che parte dalla root del server (DOCUMENT_ROOT) nel modo seguente:
<?php header('Location: /directory/la_mia_pagina.php'); ?>
Nel caso la pagina di destinazione si trovi su un altro server sarà necessario inserire l'url completo:
<?php header('Location: http://it.ccm.net/forum/'); ?>
Gli esempi citati prima rappresentano un reindirizzamento temporaneo, ciò significa che i motori di ricerca, per esempio Google, non lo prenderà in considerazione per l'ottimizzazione SEO. Invece se lo spostamento della pagina è definitivo e si si desidera segnalare ai motori di ricerca che la pagina A è ora al posto B, bisognerà inserire il seguente codice all'inizio del file PHP corrispondente alla pagina A:
<?php header('Status: 301 Moved Permanently', false, 301); header('Location: indirizzo_della_pagina_B'); ?>
Foto: © Unsplash.