Recadrons bien le contexte (histoire de ne pas se confondre) :
Précision importante : Il s'agit là d'une manipulation d'un DotClear en Query String (/?2007/...), ce n'est pas dit que cela fonctionne de la même façon en Path Info (/index.php/2007/...).
On veut rediriger toutes les anciennes adresses vers les nouvelles, par exemple :
L'ancienne adresse de votre blog DotClear : http://www.site.com/dotclear/
La nouvelle adresse à la racine (super tuto) : http://www.site.com/
Bien sûr, on pourrait le faire avec un fameux .htaccess. J'ai essayé : c'est galère à comprendre (pour moi en tout cas) et puis la methode que je vais vous proposer et tellement plus simple qu'il n'y a même pas besoin de se prendre la tête ! Voici le code à integrer tout au début de votre fichier index.php (qui se trouve dans le dossier racine de votre DotClear) :
<?php
if(ereg("/dotclear",$_SERVER['REQUEST_URI'])==1)
{
$uri = $_SERVER['REQUEST_URI']; //recupere l'url
$uri = str_replace("/dotclear","",$uri); // enleve /dotclear
header("HTTP/1.1 301 Moved Permanently"); // redirection 301
header("Location: ".$_SERVER['HTTP_HOST']."".$uri.""); // nouvelle adresse
}
?>
J'ai vu ce morceau de code sur plusieurs forums, içi par exemple. Par contre j'ai eu un petit soucis au niveau du ".$_SERVER'HTTP_HOST'.", que j'ai remplacé directement par l'URL de mon site, sans slash final : ça fonctionne impec' !
Mes anciennes URLs sont maintenant redirigées automatiquement vers leur nouvelle adresse, sans "/blog3/" !
Si vous rencontrez des difficultés, ô grande malchance (= "c'est balo") plutôt que de pourrir mes commentaires demander de l'aide içi, n'hésitez pas à demander sur le Forum DotClear (après avoir évidemment fait une recherche sur votre problème).
...D'autant que je ne serais pas très qualifié pour vous aider : je ne fais içi que faire connaitre une methode qui fonctionne et qui, si elle m'a "sauvée mon référencement", pourra sauver également celui d'autres personnes !
Une dernière chose, à propos de la redirection 301 et Google : celui-ci prend en compte ces changements ("transfert" de PageRank, etc.) en environ 2 semaines, selon Matt Cuts .
3 réactions
1 De Enak - 06/08/2007, 10:23
C'est encore plus énervant quand ont passe de dotclear à wordpress mais c'est faisable.
2 De M@x - 07/08/2007, 13:15
Bonne tactique...
Vice msieur PHP ! :D
M@x.
3 De Florent - 09/08/2007, 23:20
Goodie: tu n'as pas fait attention au "duplicate content" également! C'est lorsqu'un même contenu est disponible sur 2 URLs différentes.
Et notamment ton blog est accessible par "goudie.biz" mais aussi "www.goudie.biz". De même pour la page index, accessible via "/" ou "/index.php" -> duplicate content et punisable par une petite sandbox Google. Faut rediriger également en 301 tout ça, pour qu'une page ne soit accessible que par une seule URL.
Documentes-toi sur WRI si tu ne comprend pas.