2009-08-01 7 views
0

Je viens de trouver ceci: http://www.askapache.com/htaccess/mod_rewrite-tips-and-tricks.html -> cochez la case "suppression de la chaîne de requête". Il indique: "Sur de nombreux sites, la page sera affichée pour page.html et page.html? Anything = anything, ce qui nuit à votre référencement avec du contenu dupliqué. Un moyen facile de résoudre ce problème est de rediriger les demandes externes contenant un chaîne de requête vers le même URI sans la chaîne query_string. "Suppression de la chaîne de requête pour les améliorations SEO

Ma question est ... comment la testez-vous? J'ai ajouté le code ci-dessous:

RewriteCond %{THE_REQUEST} ^GET\ /.*\;.*\ HTTP/ 
RewriteCond %{QUERY_STRING} !^$ 
RewriteRule .* http://www.mysite.com%{REQUEST_URI}? [R=301,L] 

RewriteCond %{THE_REQUEST} ^GET\ /.*\;.*\ HTTPS/ 
RewriteCond %{QUERY_STRING} !^$ 
RewriteRule .* https://www.mysite.com%{REQUEST_URI}? [R=301,L] 

Cependant, si je vais à www.mysite.com/?anything=bla, il montre encore ce lien dans la barre d'adresse? Ai-je mal compris, ou ce code n'était-il pas supposé rediriger vers mysite.com sans la chaîne de requête?

Aussi, ai-je raison de faire un pour HTTP et un pour HTTPS?

+0

"Sur de nombreux sites, la page sera affichée à la fois pour page.html et page.html? Anything = anything, ce qui nuit à votre référencement avec du contenu dupliqué." Je suis très sceptique à ce sujet. –

+0

@Spencer: l'idée est que votre site dispose d'un seau fixe de pagerank qui est divisé entre les pages. Si vous prenez deux sites avec le même pagerank de base, mais qu'un site a une seule page pour un terme de recherche alors que l'autre a plusieurs pages, le site avec une seule page devrait avoir un meilleur classement. Bien sûr, ce n'est qu'une facette du SEO. – kdgregory

Répondre

5

Une meilleure approche - supportée par les principaux moteurs de recherche - consiste à faire en sorte que chaque page spécifie son URL canonique en utilisant <link rel="canonical">. This Google article va plus en détail. J'aurais hésité à utiliser une redirection dans le serveur web, parce que ces paramètres de requête auraient dû être là pour une raison (et s'ils ne l'étaient pas, il serait préférable de réparer vos pages pour les supprimer). Vous ne savez pas pourquoi l'adresse de votre navigateur n'a pas changé; Je vous recommande d'utiliser un outil tel que Firebug ou Fiddler pour vérifier que le 301 a effectivement été retourné à votre navigateur.

+0

Si l'URL dans la barre d'adresse n'a pas changé, je peux pratiquement garantir que vous n'avez pas récupéré le 301. – EricLaw

Questions connexes