Americas Posté 13 Avril 2006 Posté 13 Avril 2006 J'ai un problème avec Google au niveau de l'indexation de mes pages. J'avais un annuaire DMOZ dans la rubrique http://www.americas-fr.com/annuaire/ et j'ai décidé de remplacer ce dernier par un nouvel annuaire que je crée avec PhpLinkDirectory Le problème c'est que Google continue à indexer des pages de l'ancien annuaire qui n'existe plus du tout avec des urls de ce genre : -http://www.americas-fr.com/annuaire/index.php/World/Slovensko/Reference/Izobra%25u017Eevanje/ Cette Url qui vient de l'ancien annuaire Dmoz est dirigée vers la page d'accueil du nouvel annuaire qui se trouve dans le répertoire de l'ancien, sans doute à cause des régles de réécriture donnée dans le htaccess à la racine de cet annuaire : RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* index.php [QSA,L] Comment faire pour lui renvoyer un code 404 pour les anciennes urls ?
Dan Posté 13 Avril 2006 Posté 13 Avril 2006 Salut, Tout simplement avec un RewriteRule .* http://www.domaine.tld/index.php [R=404,L] Dan
Americas Posté 13 Avril 2006 Auteur Posté 13 Avril 2006 Non... si je remplace RewriteRule .* index.php [QSA,L] par RewriteRule .* http://www.americas-fr.com/index.php [R=404,L] cela me donne une erreur 500
Jeanluc Posté 13 Avril 2006 Posté 13 Avril 2006 Pourquoi pas ceci, tout simplement ? ErrorDocument 404 /index.php Jean-Luc
Americas Posté 13 Avril 2006 Auteur Posté 13 Avril 2006 ça c'est ce que j'ai dans mon htaccess à la racine du site. Mais cela ne va pas entrer dans les règles de rewriting qui sont dans le htaccess du répertoire de l'annuaire. le problème serait plutôt de lui interdire de rediriger les urls invalides vers l'index en listant les liens réellement valides
Jeanluc Posté 13 Avril 2006 Posté 13 Avril 2006 Suggestion: RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* page-ki-nexiste-pa.html [QSA,L] Mon interprétation: si la requête ne correspond pas à un directory existant, ni à un fichier existant, ni à ("-l", c'est quoi ?), alors la page demandée est ré-écrite en page-ki-nexiste-pa.html. Comme cette page n'existe pas, Apache renvoie un code 404. Si, par ailleurs, tu as le ErrorDocument adapté, la page affichée à l'internaute est celle que tu veux. Non testé! Qu'en penses-tu ? Jean-Luc
Dan Posté 13 Avril 2006 Posté 13 Avril 2006 Tout à fait ! Malheureusement l'option R ne permet pas le 404 ni le 410... désolé mais c'est contraire à la doc Apache Donc il suffit de rediriger vers un fichier qui n'existe pas et c'est ton ErrorDocument 404 qui prendra le relais. Si ton nouvel annuaire se trouve dans un autre répertoire, il suffirait aussi de virer le répertoire annuaire, non ? Dan
Nicolas Posté 13 Avril 2006 Posté 13 Avril 2006 Si ton nouvel annuaire se trouve dans un autre répertoire, il suffirait aussi de virer le répertoire annuaire, non ? Dan <{POST_SNAPBACK}> Il ne peut pas car le repertoire "annuaire" semble etre utilisé pour le nouvel annuaire... Pourquoi ne pas bloquer l'indexation des adresses -http://www.americas-fr.com/annuaire/index.php dans le robots.txt ?
Americas Posté 13 Avril 2006 Auteur Posté 13 Avril 2006 Pourquoi ne pas bloquer l'indexation des adresses -http://www.americas-fr.com/annuaire/index.php dans le robots.txt ? <{POST_SNAPBACK}> C'est pas vraiment le but recherché si je veux que Google indexe l'annuaire Si ton nouvel annuaire se trouve dans un autre répertoire, il suffirait aussi de virer le répertoire annuaire, non ? Oui... ça serait la solution la plus simple... renommer le répertoire de l'annuaire pour ne plus ête ennuyé par les anciennes urls indexées par Google. Mais là également, le but était de bénéficier du PR de l'ancien index de ce répertoire afin d'accélerer l'indexation du nouvel annuaire.
Nicolas Posté 13 Avril 2006 Posté 13 Avril 2006 C'est pas vraiment le but recherché si je veux que Google indexe l'annuaire wink.gif Bloquer -http://www.americas-fr.com/annuaire/index.php ce n'est pas pareil que de bloquer -http://www.americas-fr.com/annuaire/ Si tu spécifies dans le robots.txt de bloquer les @ /annuaire/index.php ca ne devrait pas bloquer l'adresse /annuaire/ et les adresses /annuaire/xxxxx
captain_torche Posté 13 Avril 2006 Posté 13 Avril 2006 Mais si l'index de l'annuaire, est un fichier index.php, ça risque de poser des problèmes. Mais, au vu des précédents posts, je pense qu'il serait judicieux de bloquer quelque chose comme 'annuaire/index.php/.+' (je doute que le nouvel annuaire utilise ce genre de formats d'url).
Americas Posté 13 Avril 2006 Auteur Posté 13 Avril 2006 C'est bon maintenant... j'ai la solution en partenariat avec un autre forum Elle est ici : http://forum.taggle.org/viewtopic.php?pid=17094#p17094 En fait... il faut modifier le code de l'index.php du script de l'annuaire. C'est un truc qui peut sûrement intéresser ceux qui utilisent ce script car j'ai fait le test sur de nombreux sites qui l'ont... et toutes les fausses urls sont redirigées vers l'index avec un code 200 et c'est pas très bon pour l'indexation ça. Par contre... si quelqu'un trouve la solution avec le htaccess... je suis preneur
Dan Posté 13 Avril 2006 Posté 13 Avril 2006 Par contre... si quelqu'un trouve la solution avec le htaccess... je suis preneur On te l'a donnée plus haut
Americas Posté 13 Avril 2006 Auteur Posté 13 Avril 2006 Oups ! J'avais complètement zappé l'astuce de Jeanluc avec son code quand tu as disais que la doc Apache ne le permettait pas. J'ai mal lu la combine... désolé Jeanluc Avec ça : RewriteRule .* page-ki-nexiste-pa.html [QSA,L] ça fonctionne parfaitement et ça me renvoie sur la page d'erreur 404 Bravo
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant