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 (non si può chiedere a tutti gli webmaster di cambiare, sui loro siti, i link che inviano 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.
Cosa sono gli header HTTP
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.
Reindirizzamenti semplici PHP
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).
Percorso PHP relativo/assoluto
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/');
?>
Reindirizzamenti PHP temporanei/definitivi
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: © PHP.
Jean-François Pillou - Fondatore di CCM
Meglio conosciuto come Jeff, Jean-François Pillou è il fondatore di CommentCaMarche.net. È anche CEO di CCM Benchmark e digital director presso il Gruppo Figaro.
Scopri di più sul team CCM
Potrebbe anche interessarti