web-dev-qa-db-fra.com

Aide htaccess 301 de redirection nécessaire (suppression des paramètres GET)

En raison de problèmes sur mon site, de nombreuses pages sont visibles en double avec: www.example.com/page.html?task=view mais son contenu est identique à www.example.com/page.html.

Une solution consiste à utiliser la redirection http 301 de www.example.com/page.html?task=view vers www.example.com/page.html lorsque quiconque récupère une page avec des arguments. Mais des liens comme www.example.com/page.html?task=view resteront visibles au monde extérieur.

Une autre manière est la canonisation que je ne souhaite pas utiliser car il est difficile d'insérer la balise dans Joomla CMS.

Je veux cacher www.example.com/page.html?task=view du monde extérieur.

Est-il possible de changer l'URL de www.example.com/page.html?task=view à www.example.com/page.html? Je veux dire que s'il y a un lien href de www.example.com/page.html?task=view dans ma page Web, il devrait être visible au monde extérieur comme sans aucun argument. Cela diffère de l’utilisation de 301 pour convertir une page accessible en externe: www.example.com/page.html?task=view à sans utiliser d’arguments dans .htaccess.

4
AgA

Vous pouvez utiliser la réécriture d'URL, mais si vous avez 2 pages avec le même contenu qui utilise des chaînes de requête, mes recherches montrent que Google ne vous pénalisera pas, elles ignoreront simplement l'une des pages (et je suppose que c'est celle avec la chaîne de requête). .

Je voudrais également envisager cependant si vous voulez que ce "transitaire" soit en place pour l'ajouter avec du code.

0
Dave

Je suppose que cela est possible en utilisant les redirections BOTH 301 et la réécriture d’URL.

0

Si votre application/CMS fonctionne sans ce paramètre CGI spécifique, vous pouvez supprimer le paramètre via une règle de réécriture, dans un fichier . Htaccess ou httpd.conf.

RewriteEngine On

RewriteCond %{QUERY_STRING} task=view
RewriteRule page.html       %{REQUEST_URI}? [R=301,L]
0
arober11

Si vous parlez de visibilité des pages pour Googlebot, je vous recommande d'utiliser leur panneau d'outils pour les webmasters comme décrit ici: http://support.google.com/webmasters/bin/answer.py?hl= en & answer = 1235687 . Il décrit comment vous pouvez configurer les paramètres de votre site pour éviter que Google analyse et indexe les pages au contenu identique.

Si vous n'avez pas encore installé les outils Google Webmater pour votre site, je vous recommande de le faire à l'adresse https://www.google.com/webmasters/tools/

Si vous souhaitez que les pages des autres moteurs de recherche soient invisibles, essayez quelques expériences avec le fichier robots.txt, comme suit:

User-agent: *
Disallow: /*?task=view

Cela bloquera toutes les URL contenant "? Task = view" à explorer par les robots.

0
pymeat