【PR】 足の臭いを元から除菌消臭:グランズ・レメディー 【PR】 ヒアリングマラソンなど英語教材比較 【PR】 HTMLソース暗号化用PHPライブラリ 「サーバサイドSHTML」 【PR】 Bフレッツ対応プロバイダ徹底比較 |
||||||
Googleの検索結果サマリーが文字化け【1.3円/時間】GMOインターネットのSSD「ConoHa VPS」
(参照)「縺」の検索結果 ※ 1,250,000件!!※
(参照)「繝」の検索結果 ※1,900,000件
(参照)「繧」の検索結果 ※1,270,000件 となりました。この中国語のように文字化けした検索結果は、ほとんどが日本語のサイトです。 一つ一つ、サマリーが文字化けしているサイトをWindows版IE6で表示させていくと、全てのサイトで文字化けせずに、正しく表示されました。文字化けしているのは、Googleのサマリーだけのようです。では、なぜ、Googleの検索結果サマリーは文字化けしたのでしょうか? それを解く鍵は、文字化けしているサイトのソースを覗いてみると分かります。 ほとんどのサイトで、以下のいずれかの特徴があることが分かりました。
このようにして、Googleにおける検索結果のサマリーの文字化けは、UTF-8の文書がShift_JISとして解釈されているために発生していることが裏付けられました。(実際には、Flashフォームの中で何をしているのか、皆様には見えないと思いますので、「裏づけられた」とは言いすぎですが・・・) では、なぜ、GoogleはUTF-8の文書をShift_JISであると誤認するのでしょうか? 上で挙げた文字化けの推察理由の「1」から「4」をもう一度見て欲しいのですが、要はGoogleロボットは、UTF-8の文書の場合、しっかりとメタタグで文字列を指定していることが必須であることが分かります。 話が少し逸れますが、上に挙げた文字化けの推察理由「1」から「4」のいずにれも当てはまらないケースが数%ありました。それはいずれも、小文字の「utf-8」をメタタグのcharsetの指定に使っていました。これは、一般に言われている「charsetの指定は大文字・小文字は関係ない。つまりcase insensitive=ケース・インセンシティブ」という理論に反しているように思われます。しかしながら、RFCでどのように定義されていようが(実際は、私はRFCの文書のどこにcharsetのケース・インセンシティブについて書かれているのかも知らないぐらいですが)、UA(ユーザーエージェント。ブラウザやGoogleなどの巡回ロボット)がメタタグの指定をどのように解釈するかの実装は、別問題だと思います。ですので、こういう大文字・小文字も気にされた方が無難かもしれません。 このように、メタタグの指定を誤ると、Googleなどのロボット型検索エンジンの検索サマリーが文字化けする可能性があり、本来得ることのできるはずのアクセス数をみすみす逃してしまうことになります。これはWebmasterにとって一大事であるはずです。メタタグの指定はくれぐれもご正確に。 最後に、ではなぜブラウザで見ると文字化けしないのでしょうか? それはInternet Explorerなどのブラウザは、メタタグではShift_JISであると指定しているけれど、これはUTF-8の文書なのだなと気を利かせてくれているわけです。逆に、気が利きすぎているので、HTML作成者はメタタグの指定ミスに気がつかないのかもしれません。 Googleのサマリーには、他にも検索サマリーが文字化けする事例がたくさんあります。例えば、「?」や意味不明なアルファベットが大量出現する事例です。次のページで説明します。
|