web-dev-qa-db-fra.com

Pourquoi une chaîne de requête apparaît-elle sur mes URL dans les résultats de recherche Google?

Lorsque j'entre une URL de mon site dans la recherche Google, je la récupère, mais avec une chaîne de requête ajoutée dans les résultats. Par exemple, lorsque je recherche https://example.com/blog/blog/2013/02, les résultats de la recherche l’affichent avec des paramètres tels que https://example.com/blog/blog/2013/02?limit=200.

Les paramètres du fichier robots.txt ont été refusés sous le nom Disallow: /*?. Le résultat de la recherche Google affiche maintenant le message sous la forme

La description de ce résultat n'est pas disponible en raison du fichier robots.txt de ce site. En savoir plus.

Comment puis-je éviter d'avoir cette chaîne de requête ajoutée sur l'URL?

7
alamelu

Robots.txt empêchera uniquement les robots d'analyser les URL non autorisées et non de les indexer. Si les URL interdites sont liées à l'extérieur ou en interne à partir d'une page qui n'est pas interdite, elles apparaîtront dans l'index avec le texte d'extrait que vous avez indiqué. 'ai cité.

Si vous souhaitez les exclure entièrement de l'index, la meilleure option est probablement l'élément de lien canonique:

<head> <link rel="canonical" href="http://www.example.com"> </head>

Dans l'exemple que vous donnez, la page https://example.com/blog/blog/2013/02?limit=200 contient les éléments suivants:

<head> <link rel="canonical" href="https://example.com/blog/blog/2013/02"> </head>

Cela suppose que HTTPS est votre protocole préféré. Si ce n'est pas le cas, vous devriez normaliser via une redirection 301.

L'avantage de cette approche est qu'il n'est pas nécessaire de configurer les outils pour les webmasters du moteur de recherche.

Utilisation des outils pour les webmasters

Une alternative consiste à utiliser les filtres de paramètres d'URL dans Google et Bing Webmaster Tools. Dans Google, vous le trouverez sous Analyse> Filtres de paramètres d'URL.

En règle générale, cette page contient déjà les paramètres découverts par le robot, mais vous pouvez également les spécifier manuellement.

En supposant que ?limit=200 contrôle le nombre d'éléments affichés sur une page, vous devez le configurer comme suit dans Google WMT:

Sélectionnez "Oui: Modifie, réorganise ou réduit le contenu de la page".

Sélectionnez "Narrows"

Sélectionnez "Pas d'URL"

6
GDav

D'accord. Commencez par vous débarrasser de Disallow: /*? dans le fichier robots.txt. Cela provoque le message de Google. Google dit qu'il n'a aucun accès à votre site.

Dans votre fichier .htaccess, essayez ceci:

RewriteCond %{REQUEST_URI} ^(*.)\?limit=\d+$ [NC]
RewriteRule .* https://example.com/%1 [R=301,L]

Je n'ai pas testé cela, mais je suis sûr que l'expression régulière est correcte. J'ai au moins testé cela dans un scénario différent. Essayez ceci et faites plusieurs requêtes sur votre site en utilisant une variété de ?limit=200 ajoutée à la fin de la requête et voyez s'il existe une redirection vers une URL sans celle-ci.

Je dis toujours que le paramètre ne devrait avoir aucun effet réel et ne devrait causer aucun dommage. Ça devrait aller de le laisser.

3
closetnoc

Vous ne savez pas d'où vient le paramètre de requête, mais il existe un moyen de le supprimer dans Google Analytics. Voir https://support.google.com/analytics/answer/1010249?hl=fr , rubrique "Exclure le paramètre de requête d'URL".

0