Googlebot se plante, url rewritting et sitemap buggés ?

Nouveau WRInaute
Bonjour,

Suite à une analyse des fichiers logs de mon site, je trouve des urls erronées sur les logs de googlebot depuis la derniere MAJ du sitemap.
Ce qui est inquiétant, c'est que le nombre de pages du site référencées chute brutalement.
L'outil pour les webmasters de Google indique 1 url indexée pour 2809 fournies :?

extrait du fichier log:
"GET /index.php/fr-game-182.html HTTP/1.1" 200 32955 free-flash-games.fr "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)" "-"

Il semble cherche l'adresse: http://free-flash-games.fr/index.php/fr-game-182.html alors que celle-ci n'existe pas.
il a l'air de concaténer index.php et fr-game-182.html
Les adresses http://free-flash-games.fr/index.php et http://free-flash-games.fr/fr-game-182.html elles, existent bien.
J'ai beau contrôler les liens du site et le sitemap, pas d'erreurs.

Un extrait du sitemap:

<url><loc>http://free-flash-games.fr/fr-game-720.html</loc><priority>0.80</priority><changefreq>weekly</changefreq></url>
<url><loc>http://free-flash-games.fr/en-game-720.html</loc><priority>0.80</priority><changefreq>weekly</changefreq></url>
<url><loc>http://free-flash-games.fr/fr-play-720.html</loc><priority>0.50</priority><changefreq>weekly</changefreq></url>
<url><loc>http://free-flash-games.fr/en-play-720.html</loc><priority>0.50</priority><changefreq>weekly</changefreq></url>

Par contre, il faut dire qu'un url rewritting est en place sur le site depuis peu suite à une version multilingue.
En ligne, l'url rewritting fonctionne sans problèmes, mais vu que c'est nouveau, je vous montre quand même un extrait du fichier .htaccess :

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(fr|en)-game-([0-9]+).html$ /game.php?game=$2&lang=$1 [L]

Le slash avant game.php me semble bizarre et empêche d'ailleurs l'url rewritting de fonctionner en local mais semble indispensable en ligne (erreur 404 sans ce slash, OK avec).

Merci de votre aide
 
WRInaute accro
J'aurais tendance à dire que tu as quelque part un lien vers /index.php/ (avec le / final), non? Ca affiche ton index.php, mais comme les liens dessus sont relatifs (sans / initial), forcément, ça compose.

Jacques.
 
Nouveau WRInaute
Bonjour et merci de votre aide,

Non, je viens de vérifier, pas de lien vers index.php/
De plus j'ai aussi cette erreur sur d'autres adresses, par exemple googlebot cherche à indexer des pages du type plan.php/fr-game-???.html alors que seules n'existent les pages plan.php et fr-game-???.html
 
WRInaute accro
Pas de base href incorrect non plus? Des liens externes vers ton site qui seraient incorrects?

Ou peut-être que c'est basé sur un crawl ou un téléchargement du sitemap un peu plus ancien et que le problème a été corrigé depuis?

Jacques.
 
WRInaute accro
Je n'ai jamais vu pour ma part Google inventer des URL; ces adresses incorrectes doivent se trouver accessibles dans ton site, par des balises href pas tip top, non ?
 
Nouveau WRInaute
Bonjour à tous,

Un autre exemple, aujourd'hui en milieu de journée, 2 heures après avoir proposé un dernier sitemap:

66.249.71.184 - - [28/Aug/2009:11:49:48 +0200] "GET /index.php/accueil-fr-page18-tri1.html HTTP/1.1" 200 32995 free-flash-games.fr "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)" "-"

Est-ce que cela veut bien dire que googlebot cherche à aller à l'adresse: Racine du site/index.php/accueil-fr-page18-tri1.html ???
Car cette adresse n'existe pas puisque il fait une concaténation de index.php et le reste.
Il n'y a aucun lien sur le site avec cette url ou celle indiquée en premier lieu.
Tous les liens du site sont valides et respectent l'url rewriting...

Par contre, GWT n'indique aucune erreur d'exploration.
Reste que le nombre de pages indexées pour ce sitemap tel qu'indiqué par GWT reste à 1 ce qui est louche.

Est ce que c'est simplement le log qui est trompeur ?
 
WRInaute accro
Euh... Les bots Google sont très fortement asynchrones. Ce n'est pas parce que tu lui signales une nouvelle version de ton sitemap qu'il va aller la chercher de suite (voir date de dernière mise à jour), et ce n'est pas parce qu'il a un sitemap à jour qu'il ne va pas aller chercher des pages qu'il a encore en tête d'une ancienne version d'un sitemap ou parce qu'il y a des liens vers ces pages.

En plus, là il s'auto-alimente: à partir du moment où il a visité une page /index.php/n'importequoi, il trouve de nouveau tout plein de liens vers des pages /index.php/autrechose, donc il n'en finit pas.

Assure-toi que les pages /index.php/quelquechose donnent un 404 ou une redirection vers /index.php (ou /quelquechose), et ça devrait finir par rentrer dans l'ordre.

Jacques.
 
Nouveau WRInaute
Merci Jacques pour votre réponse.
J'ai par contre besoin d'aide pour appliquer la première solution

Pour renvoyer une erreur 404 sur une page /index.php/quelquechose je rajouterai la ligne suivante dans mon fichier
robots.txt:

Disallow: index.php/*

Est-ce correct ?
Ni aura t il pas de problème avec index.php ?

Merci
 
WRInaute accro
Ca ça ne renvoie pas un 404, ça interdit juste aux robots de visiter les pages en question, mais ça devrait avoir sensiblement le même effet (même si je pense qu'une redirection vers /quelquechose serait plus opportune). Et il manque le / au début. Et non, ça ne bloquera pas index.php lui-même (même si personnellement je conseillerais de ne jamais faire de lien vers index.php mais uniquement vers /, et de mettre un redirect de index.php vers /).

Jacques.
 
Nouveau WRInaute
J'ai toujours besoin d'un peu d'aide car je n'ai jamais fait de telles redirections donc dans le doute...
Merci de m'éclairer pour une redirection de index.php/quelquechose.html vers quelquechose.html

Merci de votre compréhension
 
Discussions similaires
Haut