web-dev-qa-db-ja.com

「発明された」URLパラメータ

これは、Googleが実際に存在しないページのインデックスを作成する際に取るべき最善のアクションに関する質問です。

ファイルがnews.php?page=X参照されている一連のニュースページに、非常にシンプルなページネーションシステムがあります。

Googleサイトマップで、このタイプの有効なページの総数を指定します(現在はnews.php?page=13まで)。

画面上のページネーションは、標準の「1、2、3 ...次/前」レイアウトです。

ただし、Google Search Consoleは、この形式で14,846ページを監視していることを明らかにしました。たとえば、news.php?page=7556などの検索結果が表示されています。

ページネーションの仕組み、news.php?page=7556news.php?page=13と同じコンテンツを表示します。言い換えれば、最も古い少数のニュース項目。言うまでもなく、1-13以外のニュースページへのリンクはどこにもありません。

これが検索にマイナスの影響を与えているかどうかはわかりませんが、正当なコンテンツに悪影響を与えたくありません。

だから、私の質問は、何千もの非ページをGoogleがインデックスするのを止める最良の方法は何ですか?正当なコンテンツが含まれていないページに対して404または301リダイレクトを作成する必要がありますか? 301リダイレクトの場合、何にリダイレクトする必要がありますか?

11月13日月曜日更新:

Ilmari Karonenからのアドバイスに従って、rel.canonicalをページヘッダーに追加して、news.php?page = 7556のリクエストで正規URLがnews.php?page = 13であることを示しました。今のところ、301リダイレクトまたは404エラーページへのリダイレクトを追加していません。 Search Consoleで結果を監視し、役立つ情報を報告します。

5
Jon Ewing

これらのURLに正当なコンテンツがない場合は、404ステータスを返します。それが目的です。

また、スクリプトのHTML出力に rel = canonical link を含めて、他の予期しないURL操作(たとえば、余分なURLパラメーターの追加など)が誤って重複コンテンツを導入しないようにすることもできます。検索エンジンのインデックスに。


必要に応じて、スクリプトが他のURLを介してアクセスされたことを検出した場合、正規URLへの301リダイレクトを行うこともできますが、そうすることでSEO用語に実質的な利点はありません。ただし、expect、何らかの理由で、ユーザーが複数の異なるURLを介して同じページに定期的にアクセスする場合、301リダイレクトを設定できますユーザーがブックマークとリンクでこれらの正規URLを常に使用するようにします。

(たとえば、Stack Exchangeは両方の方法を使用します: your question のURLと my answer to it のURLは異なりますが、後者からrel = canonicalリンクがあります一方、SEが RLスラッグが質問のタイトルと一致しない を検出した場合、301リダイレクトを実行します。


追伸説明から、ページネーションは、新しいアイテムが追加されるたびにページ1の上部に表示され、すべてのページの最後のアイテムが次のページにプッシュされるように設定されているようです。このようなスキームの問題は、インデックスを最新の状態に保つために、Googleは新しいアイテムが作成されるたびにページを再クロールする必要があることですall追加されました。それらが十分に速く行われないと、一部のアイテムがGoogleのインデックスから完全に欠落し、一部が2回表示されるか、ユーザーが検索していたアイテムが実際に含まれていないページを指す古いGoogle結果になります。

各ニュースアイテムに独自の安定した正規URLがあり、ページ分割されたリストがディレクトリとしてのみ機能し、安定したアイテムURLにリンクしている限り、それは大きな問題ではありません。 (たとえば、Stack Exchangeの question list はそのように機能し、Googleはそれを適切に処理します。)実際、その場合は、「noindex」の追加を検討することもできます robotsメタタグ リストページ(または、少なくとも、最初のページを除くすべてのページ)にアクセスして、訪問者を直接アイテムページに誘導するようGoogleに働きかけます。

ただし、ニュースアイテムonlyが番号付きリストページに表示される場合は、各アイテムに単一の安定したURLが含まれるようにサイトを再設計することを検討する必要があります。これにより、Googleが実際にニュースアイテムを正しくインデックス化し、Googleの結果からサイトにアクセスする訪問者が実際に探していたものを見つける可能性が高くなります。

4
Ilmari Karonen

与えられたページ番号に基づいてデータを生成するある種のスクリプトを実行する必要があります。悲しい真実は、スクリプトを設計した人は誰でもエラーを真剣に考慮しなかったということです。

指定したページ番号がサイトで作成した実際のページ総数(13?)を超える場合、出力は理想的にはページが見つからないことを示すHTTPエラー404である必要がありますが、Googleは既にこのような架空のページのインデックスを作成しようとした場合、HTTPエラーコードをエラー410に変更して、ページが見つからないことをGoogleに通知し、その特定のページのスキャンを停止する必要があります。

基本的なプログラミングの経験がある場合は、この問題を自分で修正できます。それ以外の場合は、使用しているスクリプトの開発者に問題を連絡する必要があり、Webサイトのタスクで正しく機能するスクリプトを置き換える新しいスクリプトを取得する必要があります。

架空のページへのリダイレクト(301または302)はお勧めしません。なぜなら、値が提供されておらず、架空のページ番号とリダイレクト先の新しいURLをスキャンする検索ロボットの結果としてサーバーの速度が低下するためですただし、ゲストが架空の番号にアクセスしようとしていると思われる場合は、エラーページに有効なページへのリンクを含めることができます。

0
Mike