googlebotがマーケティングURLのインデックスを作成しようとしているかどうかを心配する必要がありますか?
質問
最近 Googleウェブマスターツールの使用を開始しました。
Googleがインデックスに登録しようとしているリンクの数を見て驚いた。
http://www.example.com/?c=123
http://www.example.com/?c=82
http://www.example.com/?c=234
http://www.example.com/?c=991
これらはすべて、パートナーサイトからのリンクとして存在するキャンペーンです。
現時点では、サイトが完成するまで、ロボットファイルによってすべて拒否されています。サイトのすべてのページと同様です。
robots.txtファイルの制限を緩和する前に、このようなリンクに対処するための最善の方法は何ですか?
これらが異なるURLとして扱われ、Googleの検索結果に表示されるようになるのではないかと心配です。それらはすべて同じページに対応しています-ギブまたはテイク。人々がそのままそれらを見つけてクリックすることは望ましくありません。
これまでのところ、次のようにクエリ文字列を含むページをレンダリングするのが最善のアイデアです。
// DO NOT TRY THIS AT HOME. See edit below
<% if (Request.QueryString != "") { %>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<% } %>
これを行う必要がありますか?これが最良のアプローチですか?
編集:これにより、良いアプローチにならないことがわかりました。 Googleが、NOINDEXを持たない別のページと同じコンテンツを持つページでNOINDEXを見ていることがわかりました。どうやら同じものであり、NOINDEXが優先されるようです。その結果、私のサイトはGoogleから完全に消えました。警告:同時に他の何かをすることもできましたが、このアプローチのリスクはありません。
解決
これは、 rel =&quot; canonical&quot;
が設計されたようなものです。 Googleがそれに関するブログ記事を投稿しました。
他のヒント
はい、Googleはそれらを異なるURLとして解釈します。
Webサーバーによっては、書き換えフィルターを使用して検索エンジンのパラメーターを削除できます。たとえば、 url書き換えフィルター Tomcatの場合、または Apacheのmod rewrite 。
>個人的には、トラッキングパラメータを削除して同じページにリダイレクトするだけです。
ページが独自のフォルダーに存在しない限り、それは最良のアプローチのようです。その場合、robots.txtファイルを変更してそのフォルダーを無視することができます。
インデックスを作成すべきではないリソースについては、ページの読み込み時に単純なリターンを行うことを好みます:
if (IsBot(Request.UserAgent)
return;