web-dev-qa-db-ja.com

正規リンクとURL書き換えでパラメーターを使用する最適な方法

PHPおよびmod_rewriteで独自のカスタムルーティングモジュールを使用します。典型的なメインページURLは次のようになります。

http://www.example.com/services

サイト上の製品を表示するWebサイトの大部分(Googleでインデックス登録された6000ページ)があり、URLは次のようになります。

http://www.example.com/products/model/bmw/cat/lubricants

問題は、一部のページには、パラメーターを含む上記の同じページへのリンクがあることです。

http://www.example.com/products/model/bmw/cat/lubricants/highlight/value

したがって、これらのURLは同じコンテンツを持ち、2番目のURLは特定の製品を強調するために使用されるパラメーターを持っています。

私が持っている問題は次のとおりです。

  • Googleは、各URLのバージョンにインデックスを付けました。 highlightパラメーターを使用して、訪問者が直接バージョンに到達したくないので、これらのURLにインデックスを付けたくない

  • ウェブマスターツールでは、ページのタイトルが重複して表示されます(同じコンテンツであるため、コンテンツ/メタなどの重複に関する警告が表示されない理由がわかりませんが、..)。そのため、これを修正する必要があります。

私はこれらの可能な解決策を考えることができます:

  1. highlightパラメーターを使用してページが要求されたときに<link rel="canonical">を使用し、それなしのページをポイントします。現在の形式のままURLを残します。 Googleが時間内にそれらをマージするのを待ちます。

  2. highlightパラメーター(/を使用)を「書き換え」する代わりに、古典的な方法であるwww.example.com/products/model/bmw/cat/lubricants/?highlight=valueを追加し、highlightウェブマスターツールでパラメータのリストを無視します。そうすれば、ページのコンテンツを実際に変更しないパラメーターは、検索エンジンによって区別できます。

    このソリューションは(検索エンジンで見られるように)深さを少し短くすることもあり、SEOの観点からは良いことだと思います。

  3. 1と2の組み合わせ:正規リンクと古典的なパラメーター。

    繰り返しますが、forceGoogleが結果をマージし、それらのページのクロールを待たないために、ウェブマスターツールにパラメータを追加する必要がありますか?

  4. これは愚かですが、ウェブマスターツールでhighlightを追加し、URLをそのままにしておきますが、このように動作するとは思わず、Googleパラメータを検出し、結果からページを除外するために、?x = yの形式のURLのみを想定しています。

だから、これらのどれが最もうまくいくでしょうか?他にすべきことはありますか?

Googleには、パラメータを含むページのインデックスが300件しかありません。それらを失ってもかまいませんが、パラメータのないページとの「マージ」が望ましいでしょう。

そして、ウェブマスターツールでのタイトルの重複についての言及は、やや気になります。それはそれらのページのランキングに影響しますか(またはパラメーターなしの対応)?

2
binar

はい、この場合、正規のURLと従来のクエリ文字列パラメーターの組み合わせが最適なソリューションになると思います。 Googleは通常、重複するコンテンツを検出できますが、最適なURLを選択できない場合があります。正規を使用すると、ハイライトURLへのすべてのリンクは、基本的に正規URLのリンクとしてカウントされます。

頭に浮かぶ唯一の可能な解決策は、常に正規のURLにリンクし、何らかの検出を使用してハイライトを表示するかどうかを決定することです。ただし、これはハイライトを表示する条件によって異なります。たとえば、参照URL(search?q=valueなど)を検出し、「値」に一致するものを強調表示できます。上記の#3のアプローチはおそらくこれよりも簡単です。

2
DisgruntledGoat