0

私は約 20 ~ 50 ページ (記事、リンクなど) しかない Web サイトを管理しています。どういうわけか、Google は 1000 以上のリンクをインデックスに登録しました (重複、URL に異なる文字列を持つ同じページ)。これらのリンクに?date=は url が含まれていることがわかりました。私はDisallow: *date*すでにrobots.txt. しかし、問題は依然として残っています。リンクは検索結果に表示されます (そしておそらく表示されるでしょう)。GWT で簡単に URL を削除できますが、一度に 1 つのリンクしか削除できず、1000 個を超える URL を 1 つずつ削除することはできません。

質問: URL に含まれるすべてのページから元のページへの動的 301 リダイレクトを作成することは可能$date=ですか?また、その方法は? Google はそれらのページを再インデックスし、元のページにリダイレクトして、それらの多数のページを検索結果から削除すると考えています。

例:

悪いページ: 「日付」が異なるn 個www.website.com/article?date=1961-11-1の同じページ

良いページ:www.website.com/article

すべての悪いページを良いページに自動的にリダイレクトします。

私はこの問題を解決するために一日中費やしました。サポートを得ることができれば幸いです。ありがとうございました!

PS私が考える限り、このコーディングの質問はstackoverflowで尋ねるのが正しいものですが、間違っている場合(許してください)、これを質問できる正しい場所にリダイレクトしてください。

4

1 に答える 1

1

これは、Google がこの問題を解決するために提案している方法であり (この問題に関するWebmasters ヘルプページはここにあります)、すべてではないにしてもほとんどの検索エンジンで使用されています。のような要素を配置すると

<link rel='canonical' href='http://www.website.com/article'>

ページのヘッダーでは、href 属性の URI は、ページの「正規」バージョン、インデックス付けされるページなどと見なされます。

記録のために: 重複したコンテンツが html ページではなく (動的に生成された画像など)、Apache を使用している場合、.htaccess を使用して標準バージョンにリダイレクトできます。残念ながら、Redirect および RedirectMatch ディレクティブはクエリ文字列を処理しません (これらは厳密に URI 用です) が、mod_rewrite を使用してクエリ文字列の一部を取り除くことができます。たとえば、これを行う方法については、この回答を参照してください。

于 2013-01-23T01:23:07.977 に答える