3

URL は大文字と小文字を区別する必要があることを理解しています。

http://www.example.com/test.php


http://www.example.com/TEST.php

2つのことである必要があります。

しかし、UTF-8 も大文字と小文字を区別する必要がありますか?

http://zh.wikipedia.org/wiki/%E8%A7%82%E6%B5%8B%E5%A4%A9%E6%96%87%E5%AD%A6

http://zh.wikipedia.org/wiki/%e8%a7%82%e6%b5%8b%e5%a4%a9%e6%96%87%e5%ad%a6

それらは等しくあるべきですか?

私が尋ねる理由は次のとおりです。私のサイトはすべて小文字の URL を使用していますが、Googlebot は URL の大文字のバイアラントを使用し続けています。

4

4 に答える 4

1

この質問について100%の権限で話すことはできませんが、URLが検索インデックス、URLのテーブル、またはGoogleが使用する無数のデータストアにどのように保存されるかについて考えるのをやめると、私はできません。 URLが何らかの方法で正規化されないことを想像してください。

どんな種類の正規化でもURLを文字列にデコードする必要があるため、違いはありません。Googleが%エンコーディングでURLを保存した場合、私は驚きます。テキストをUTF-8に保存できます。パーセント記号は、物事を人間に見えるようにするためのものです。

グーグルの大文字の変形の「使用」は、単に表示と報告の目的であると私は推測します。URLエンコーディングはまったく保存されていないと思います。

于 2012-07-20T03:13:30.163 に答える
0

これらは16進文字のペアであると想定されているため、エンコードされた文字の小文字と大文字のバリアントは同等と見なす必要があります(たとえば、0xabと0xABは同じ値です)。

于 2012-07-20T04:01:31.187 に答える
0

Googlebot に関して言えば、どこから情報を取得しているかを予測するのは困難です。小文字のみでリンクし、XML サイトマップに小文字で記述されている場合でも、大文字でサイトにリンクしているユーザーがいる可能性があります。

Google が URL を大文字と小文字を区別して扱うことは間違いありません。これがrel=canonical 仕様をサポートする理由です。rel=canonical 仕様を正しく使用していれば、Googlebot がすべて大文字の URL にアクセスする心配はありません。インデックス作成のためにページを処理すると、すべてのページの「値」が正規の URL に統合されます。

さらに明確にしたい場合は、すべての大文字のリクエストを小文字のバージョンに 301 リダイレクトできます。そのため、Googlebot は 301 に続いて小文字バージョンになります。

また、301 と rel=canonical を使用している場合でも、Googlebot は引き続きすべて大文字の URL をクロールすることがわかります。これは、これらの URL が 404 または 410 の場合でも発生します。基本的に、Googlebot は URL を忘れることはありません。時々、ある時点で存在していたことがわかっている古い URL を試したり、リンクがまだそれを指している場合でも、何年も前に行ってしまいました。

于 2012-07-23T18:13:42.127 に答える
0

URL のパーセントでエンコードされた部分は、同じ URL に正規化する必要があります。このウィキペディアのページですべての答えが得られるはずです ;)

http://en.wikipedia.org/wiki/URL_normalization

于 2012-07-23T18:32:40.347 に答える