Merci à la talentueuse rédactrice du “Petit Dotclear Enchantier” qui m'a donné la force de ce coming-out, ceci est la publication d'un mail initialement pour mes amis.
Mon problème : faire comprendre à Google et aux utilisateurs de rss que j'ai déplacé l'url de mon site de http://dascritch.ath.cx
en http://dascritch.net
, passant parla même de mon pc à côté de mon lit à un prestataire de service.
J'ai rouvert mon ancien site, avec un serveur apache à poil, sans interpréteur php (ni cgi-bin qui m'avait troué mon pc chez moi avec un LMZ, oui, me suis fait piraté mon pc comme un con à cause d'un vieux awstat oublié dans une arbo mal patchée... Comme quoi, Marc, ça arrive même aux “consciencieux”...)
Dans la racine de son répertoire web, .htaccess<FilesMatch "[^rss.php]"> Redirect 301 / http://dascritch.net/ </FilesMatch>un petit regex qui redirige définitivement (code 301*) toute requête vers le nouveau site. Sauf pour les fichiers "rss.php"
dans un répertoire dotclear vierge, fichier .htaccess
AddType text/xml .phpdonnera automatiquement un "bon" mime-type de rss (çui là n'est pas le bon,mais ça semble convenir) en servant un fichier texte qui ne sera pas interprété). Et l'accompagnant, à la même url que l'ancien fil rss, le fichier invitant à une redirection :
<?xml version="1.0" encoding="UTF-8" ?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns="http://purl.org/rss/1.0/"> <channel rdf:about="http://www.dascritch.net/blog.php/"> <title>da scritch blog zone</title> <description><![CDATA[]]></description> <link>http://www.dascritch.net/blog.php/</link> <dc:language>fr</dc:language> <dc:creator></dc:creator> <dc:rights></dc:rights> <dc:date>2006-04-10T22:20:53+00:00</dc:date> <admin:generatorAgent rdf:resource="http://www.dotclear.net/" /> <sy:updatePeriod>daily</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <sy:updateBase>2006-04-10T22:20:53+00:00</sy:updateBase> <items> <rdf:Seq> <rdf:li rdf:resource="http://www.dascritch.net/" /> </rdf:Seq> </items> </channel> <item rdf:about="http://www.dascritch.net/"> <title>L'URL DU SITE A CHANGÉ</title> <link>http://www.dascritch.net/</link> <dc:date>2006-04-11T22:20:53+00:00</dc:date> <dc:language>fr</dc:language> <dc:creator>Da Scritch</dc:creator> <dc:subject></dc:subject> <description>Rendez-vous désormais sur www.dascritch.net. Et mettez à jours vos fils rss !</description> <content:encoded><![CDATA[<p><a href="http://dascritch.net/">Rendez-vous désormais sur www.dascritch.net. Et mettez à jour vos fils rss !</a></p> ]]></content:encoded> </item> </rdf:RDF>
Une seule entrée, datée de dans un an (à indiquer trois fois, format ISO 8601 recommandé par le W3C) pour qu'il soit toujours en tête des classements chronologiques des aggrégateurs, indiquant bien quelle est la nouvelle adresse. Radical : En trois jours, les 9 agents qui n'avaient toujours pas changés d'adresse sont sur le nouveau site. (À ce sujet, ceux qui comme moi ont un aggrégateur en ligne, si on faisait comme les spidder, à savoir mettre une url dans le User Agent des requêtes ?)
Voilà, normalement, c'est blindé et ça devrait marcher. le site .ath.cx
est sur un serveur en ip flottante. Essayez http://dascritch.ath.cx
puis http://dascritch.ath.cx/dotclear/rss.php
. pour les “vrais” utilisateurs du net sous unix, à essayer avec la commande curl -i http://adresse
, ce qui donne l'entête http en prime.
* Le redirect standard (code 302) n'entraîne pas une màj de Google. À ce jour, Google est le seul à ne pas parser mon site, s'arrêtant à la racine et au robots.txt sans réelle explication... frustrant.
4 réactions
1 De Da Scritch - 09/05/2005, 13:55
Bien sûr que Google ne trouvait rien malgré sa bonne volonté:
taper dans dascritch.ath.cx lui faisait chercher / , puis par défaut /index.html . De là, erreur 301 » renvoi sur dascritch.net/index.html ... Erreur 404 page inconnue !
donc dans .htaccess , si votre page de garde est index.php, mettre ceci :
# Allo Google ? Je suis laaaaa !
redirect 301 /index.html /index.php
ça devrait aller mieux. (mais quel con quel con quel con !). à confirmer cependant
Moralité : Google tente de pallier aux mauvaises configurations de sites web, mais le fait d'une manière (bizarrement) moins complète que Inktomi, MSNsearch,... !
2 De Da Scritch - 16/05/2005, 12:32
Bon, maintenant ça marche.
Ce que je vous conseille, puisque votre serveur est à nu (et donc ne s'occupe pas du .php comme il le ferait si le module était implenté), c'est de rediriger toute requête index.html vers la racine du nouveau site. Comme suit:
<FilesMatch "[^rss.php]">
Redirect 301 / http://dascritch.net/
</FilesMatch>
redirect 301 /index.html http://dascritch.net/
redirect 301 / http://dascritch.net/
Et dans votre nouveau site, de bien définir comme PREMIER document par défaut "index.php" si vous n'avez pas de "index.html" (cas sur ce site et mon hébergeur, une combo fatale pour Google, et rien que pour lui)
DirectoryIndex index.php
et voilou, tout le monde sera content
3 De Varia - 14/07/2005, 17:07
Installation de Doctclear 1.2.1
En vrac pour l'instant : Sivit et le safe mode L'extension Gallery : le nom des images ne doit pas commencer par un caractère numérique La restauration d'un carnet en UTF-8 n'est pas possible (à confirmer) comment faire pour indiquer aux...
4 De carpette - 08/06/2006, 12:24
comment je peux faire je n'arrive pas a mettre des commentaires sur les autres blog et j'aimerais y arriver merci de maider