技術

検索エンジンにあなたのページが空白に見えてしまう理由

ブラウザでは完全に普通に見えるページでも、検索エンジンにはほとんど何も読ませていない、ということがあり得ます。

概要

このチェックは、ページのJavaScriptが実行される前の、元のHTMLの時点でどれだけの実際の、表示可能なテキストコンテンツが含まれているかを見ています。これは検索エンジンや他の自動化ツールが読み取る元の素材です。ブラウザで最後まで読み込みが終われば完全に普通で内容の詰まったページに見えたとしても、この元のコンテンツが最小限、あるいはまったく存在しない場合、ここでは「事実上空白」と判定されます。

ブラウザが最終的に表示するものと、最初の時点で存在しているものとのこのギャップは、コンテンツが最初から含まれているのではなく、ページの初期読み込み後にJavaScriptによって生成される、一部の最新のWebフレームワークで構築されたサイトによく見られます。

重要な理由

多くの検索エンジンはJavaScriptを実行でき、最終的には完全に読み込まれた状態のページを見ることも多いのですが、それは常にそうとは限らず、即座にそうなるわけでもなく、無限に待ってくれるわけでもありません。何かコンテンツを表示するのに完全にJavaScript頼みのページは、最初のレスポンスの時点で実際に読める本物のコンテンツを含んでいるページと比べて、確実に読み取られ、クロールされ、インデックスされるかという点で、不必要なリスクを負っていることになります。

これはまた、デザイン上の選択というよりバグの早期警告サインとしても役立ちます。コンテンツを表示するはずのページが、元のHTMLでほとんど何も返していない場合、それは単に読み込みが遅いデザインというだけでなく、サーバー側で何かが静かに失敗していることを示している場合があります。

修正方法

  1. ページの生のHTMLソース(右クリック→「ページのソースを表示」で、JavaScriptが実行される前に配信される内容を確認できます)を表示し、メインコンテンツが実際にテキストとしてそこに現れているか確認します。
  2. 元のソースにはないのに通常のブラウザ表示では見える場合、そのコンテンツはページ読み込み後にJavaScriptによって完全に生成されている可能性が高いです。
  3. モダンなJavaScriptフレームワークを使っている場合は、「サーバーサイドレンダリング」や「静的サイト生成」といったオプションを検討しましょう。これらは、ブラウザに構築を完全に任せるのではなく、実際のコンテンツがすでに含まれた状態のページを生成します。
  4. これが想定外の事態である場合(サイトをこのように動作させるつもりで作ったわけではない場合)、意図したコンテンツなしでページがレンダリングされる原因となっているサーバーエラーやビルドの失敗がないか確認してください。
  5. 変更後にLaunch Readinessのチェックを再実行し、ページの元のHTMLで実際のコンテンツが検出されるようになったか確認しましょう。

あなたのサイトにもこの問題がないか確認しましょう

Launch Readinessは、この問題を含む約50項目を数秒でチェックします — 無料・登録不要。

無料でチェックする