スキップしてメイン コンテンツに移動

サイトのGoogle検索へのインデックスを向上して検索結果に表示し易くしよう

サイトがGoogle検索に表示されない原因は大きく分けて二つある。

一つはインデックスされず、Googleにサイト内容が把握されてない。もう一つはランキングが低く、インデックスされたページがあってもサイト評価が低くて検索結果の順位を落とされるか消されている。

ランキングの向上に関しては余りはっきりしたことはいい難いし、Google検索のサイト評価がどのように行われるかはGoogleの関係者も分からないくらい複雑怪奇な面がある。個人的に公式の検索エンジン最適化(SEO)スターターガイドが最も信頼できると思う。ランキングの方向性(何が良くて何が悪いか)がGoogle検索の視点から示されているからたとえランキングが更新されても付いて行けるようなサイト運営が可能になるに違いない。

本稿ではインデックスの向上を考える。ランキングと違って決められたことをやれば大丈夫だから遥かに簡単なんだけれども偶に落とし穴に嵌まったように身動きが取れなくなってしまうことがある。ありがちなのはサイトに誤って検索避けがかかったり、URLの正規化を別のページに向けたりしてインデックスされない。知っておくべきものはしっかり知っておくことが余計な心配を減らすことに繋がる。

Search Consoleを使う方法が出て来るので、予め説明しておくとGoogleが提供する無料のWebサービスの一つで、自分のサイトをGoogleアカウントで登録するとGoogle検索でのインデックスやクリック数やクローラーの動きなどのSEO(検索エンジン最適化)対策への様々な情報を得られるようになり、とても便利なものだ。

インデックスを確認する方法

サイトが検索結果に出ないのはページが検索エンジンにインデックスされてないかランキングが外れているためなので、本当にインデックスが原因で検索結果に出ないのかを確かめないと正しく向上させることもできない。

些細な日常のGoogle検索の検索結果
検索結果|Google

検索窓に「site:」という検索演算子を付けたページのURLを入力して検索する。

例えば些細な日常のトップページだとURLは「https://www.nagahitoyuki.com/」なので、インデックスを確認する場合は「site:https://www.nagahitoyuki.com/」というキーワードで検索するのと等しい。

もしもGoogle検索にページがインデックスされていれば検索結果のスニペットが表示される。URLに後続のディレクトリがあって同様にインデックスされていればやはり表示される。トップページのインデックスを確認すれば子ページの分も出て来るかも知れない。

もしもGoogle検索にページがインデックスされていれば「一致する情報は見付かりませんでした」というメッセージが表示されるたけになる。

Google検索でサイトのインデックスを確認する方法の利点としてはどんなサイトのインデックスでも調べられることと何かにサイトを登録する必要もなく、手軽に行えることが挙げられる。

site検索演算子はインデックス済みの子ページがあれば出て来るけれども全部とはかぎらないので、インデックスされたページの数を十分に知ることはできない、後、検索避けや削除のページが含まれる可能性があるからインデックス登録だけではなく、Googleの検索結果に出るかどうかを調査するには必ずしも正確ではない。

参考:Google 検索演算子の概要

Search ConsoleのURL検査で確認する場合

Search Consoleの「URLはGoogleに登録されています」と表示されたURL検査
URL検査|Search Console

Search ConsoleのURL検査は最上段の検索窓(検索アイコンの虫眼鏡を開いた後の入力欄)にURLを入力して送信する。

入力するURLはドメインからの完全なサイトアドレスでなければならないので、「http://」か「https://」から最後まで省略せずに行う。

URL検査はメニューのURL検査やカバレッジのURLの個別ページからでも行える。メニューのURL検査は最上段の検索窓と同じだけれどもカバレッジの個別ページからだとURLを入力する手間が省ける。

もしもGoogle検索にページがインデックスされていれば「URLはGoogleに登録されています」というメッセージが出て来る。

もしもGoogle検索にページがインデックスされてなければ「URLがGoogleに登録されていません」というメッセージが出て来る。

続けて公開URLのテストを行ってもインデックスの確認が行える。

公開URLの検査ではページがたとえインデックスされてなくてもインデックス可能な状態かどうかを知ることができる。

Search Consoleでサイトのインデックスを確認する利点としてはインデックスされない場合に検索避けがかかっているかどうかや正規URLのずれが分かるのが特に有り難い。

インデックスが除外される三つの検索避け

  • robotsメタタグ(meta)のnoindex
  • robots.txtによるブロック(Disallow)
  • X-Robots-Tag http ヘッダーのnoindex

参考:robots メタタグ、data-nosnippet、X-Robots-Tag の仕様

最初のURL検査ではインデックスされている場合、次の公開URLのテストではインデックスされていてもいなくても検索避けの有無が分かる。インデックスされていれば検索避けはないので、されていないときにカバレッジとインデックス登録を許可?の項目で検索避けが示される。インデックスを望むページに図らずもかかっていれば修正することかできる。

加えてカバレッジのインデックス作成では正規URLがユーザーが指定したものとGoogleが選択したものが分かるので、サイトのcanonicalメタタグ(meta)で記載するけど、インデックスを望むページが図らずも含まれてなければ修正することができる。

参考:重複した URL を統合する

その他、カバレッジではURLの検出元やクロール日時など、モバイルユーザビリティではスマホに十分に対応済みかどうか(承認さればモバイルフレンドリーと表示される)といった関連情報も得られる。

インデックスを促進する方法

Googleがサイトのページをインデックスする道筋は二つある。

  • どこかのリンクからURLを見付ける
  • サイトマップからURLを見付ける

クローラーという検索エンジンがサイトのデータを収集するためのロボット、Googleの場合はGooglebot(グーグルボット)がインターネットを回っていてサイト(内外を問わず)に貼られたリンクからURLを検出して訪問して初めてサイト内容をインデックスすることが可能になる。

またはSearch Consoleを使ってサイトマップを送信するとどこにもリンクが貼られてなくてもインデックスされるかも知れない。

概してリンクが主要なクロール先で、サイトマップはその補足と捉えて良いと思う。Google検索でそのように設定されているかどうかは分からないけれどもリンクは増えれば増えるほどにクローラーを多く呼び寄せるし、多くても数種類しか使えないサイトマップよりもページがインデックスされる確率を上げるのではないかと推測される。

SEO対策の実感としては間違いなく、重要なのはリンクであって比較すればサイトマップは必要ないくらいとも断言する。

Google検索の場合はリンクがページランクとしてサイト評価に大きな影響を与えるからサイトマップだけで、リンクがないか少ないか関連性が薄い、一言ではサイトのページランクが低いとたとえインデックスされてもサイト評価が上がらず、検索結果に出ない可能性が高いだろう。

サイト運営で良いリンク、ページランクが高いというGoogle検索に気に入られたサイトからのリンクを数多く得ることは難しいし、特に自分以外の外部サイトからは厳しいので、そうしたリンクに期待するだけではなく、少しでもクローラーを多く呼び寄せるためにサイトマップも使うというのが良くあるSEO対策の一つだと思う。

Search Consoleのリンクの上位の内部リンクページ
リンク|Search Console

リンクはインデックスを促進する方法としては最も強力で、関連性のある優れたサイトから貼られるほどにGoogle検索でのサイト評価を上げることにもなるからSEO対策として総合的に欠かせないものにもなる。

ただし自作自演で何千何万とやり過ぎるとリンクスパムとしてペナルティーの対象になり、サイト評価を下げられて最悪の場合は検索結果から除外されるから注意しなくてはならない。

自分で行う場合はサイトの内部リンクかソーシャルメディアなどで紹介するリンクを使うのが一般的で、複数のサイトを運営していれば相互リンクを行うこともできる。

クローラーが辿ってインデックスに大きく役立ち、しかもサイト評価の大きな要因のページランクを渡すのはHTMLのaタグのrel属性で制限されないリンクにかぎられる。rel属性で何か制限されるaタグのリンクはインデックスにもサイト評価にも比較的に役立たず、インデックスを促進する効果も低いと考えられる。

クローラーを制限する三つのrel属性の値

  • sponsored:広告
  • ugc:利用者の投稿
  • nofollow:不追跡

参考:Google に外部リンクの関係性を伝える

リンクスパムの問題があってソーシャルメディアだとリンクのaタグにnofollowが付いている(SEO効果を下げてリンクを無闇矢鱈に貼らせない)のが普通だからリンクを貼ってもインデックスは普通よりも捗らないと考えられる。

ただしFacebookやTwitterなどの巨大なソーシャルメディアだとクローラーが来捲っているからたとえnofollowを付けられても誰も知らないようなサイトに貼られた通常のリンクよりも良くないとはいい切れないかも知れない。

nofollow以外の二つもSEO効果はnofollowと同じで、sponsoredは商品ページ、ugcはサイトのコメントに記載されたページのリンクに主に使われるので、当て嵌まるものはインデックスの促進を含めてSEO効果は下がってしまう。

自分のページからリンクを貼る場合にもクローラーの制限は使えるし、他のページへの発リンクが多いとページランクを渡し過ぎたり(自分のページのページランクを下げ過ぎる)、クローラーがサイト内容を把握する妨げになったり(サイト内容と直結しないページへのリンクは自分のページに別の意味付けを与え兼ねない)、または特に商品ページへのリンクが多いのに制限しないと宣伝ばかりの低品質なページと見做される危険性もある。

Search Consoleのサイトマップを使う

Search Consoleの「サイトマップインデックスは正常に処理されました」と表示されたサイトマップ
サイトマップ|Search Console

Search Consoleのサイトマップからサイトのサイトマップを送信するとGoogle検索にインデックスを望むURLを知らせることができる。

サイトマップとして通用するファイル

  • xmlファイル
  • フィード/RSSやmRSSやAtom 1.0
  • txtファイル

参考:サイトマップの作成と送信

Google検索でサイトマップとして認識される書式が決まっているからそれぞれに合わせたものをサイトに用意して使う。

個人的な感想としてやってもやらなくても殆ど変わらない気がするし、Googleもページやコンテンツが少なくて十分なリンクがあればサイトマップは必要ないという(サイトマップについて)けど、しかし反対にページやコンテンツが多い場合やリンクが少なかったり、一つもないページにとってはかけがえのない方法になると思うし、インデックスを期待するほどにやらない手はない。

サイトマップは、一旦、登録すると定期的に読み取られるから更新して何もしなくてもGoogle検索に反映する。時間のずれがあってフィードのサイトマップは最新のコンテンツのURLしか含まないけれども比較的に早く読み込まれるようだ。定期的な読み取りは遅れると、数ヵ月、止まっている場合もあるので、気がかりならば最終更新の<lastmod>を示したサイトマップの再送信を行うとGoogle検索で急いで更新される。多くのコンテンツを一気に追加した場合もサイトマップの再送信を行うと効率的に読み取られる。

その他、検索避けに使われるrobots.txtにもサイトマップを記載することができる。

Sitemap: サイトマップのURL

参考:robots.txt ファイルを作成する

robots.txtの最後の方に追記するような形で、サイトマップのURLを提示するとGoogle検索にサイトマップを通知してクローラーを呼ぶことができる。

Search Consoleのインデックス登録のリクエストを使う

Search Consoleの「URLはGoogleに登録できます」と表示されたURL検査の公開URLのテスト
URL検査|Search Console

Search ConsoleのURL検査の次か次の公開URLのテストでインデックス可能な状態ならばインデックス登録をリクエストのボタンでインデックスを促進することができる。

URL検査の次の画面から行うと公開URLのテストを先に自動で通すような流れになり、ページが検査避けやエラーでインデックス不可能な状態ならば中止される。

ページを一つずつインデックス申請できるから更新した場合などに便利に使えるけど、ただし一日の使用回数が決められていて停止したら翌日までか二十四時間程度は待つしかない。

一日の使用回数はGoogleで公表されてないようで、やってみると十回前後で止まってしまう。上限に達して止まっても何分か間隔を空けると一つできたりするものの二つ目で直ぐに止まって続かない。何分か間隔を空けると又一つできるから上限に達したら完全に終了というわけでもない。後から気付いて少し追加することは難しくない。

上限に達したらインデックス申請が「割り当て量を超えています/1 日の割り当て量を超えたため、リクエストを処理できませんでした。明日、もう一度お試し下さい」というメッセージで止まる。

または上限に達しなくても「エラーが発生しました/問題が解消しない場合は、数時間にもう一度お試し下さい」というメッセージで止まることもある。メッセージ通りに間隔を空ければおよそ大丈夫かも知れないけれども、全然、駄目な場合もないわけではない。サイトのエラーを調べてあれば修正するか、それでも無理ならばGoogle検索の不具合かも知れないし、Search Consoleのフィードバックの送信で連絡を取ったり、Google検索セントラルのヘルプコミュニティで訊いたりして対処するしかない。

インデックスの登録のリクエストは直ぐに処理されてGoogle検索でのサイト評価を含めてインデックスが許可されれば一日か遅くても数週間以内にインデックス登録が完了する。

参考:ウェブサイトの再クロールを Google にリクエストする

登録に関する注意点と必要性

Search Consoleのカバレッジの除外さらたステータスのクロール済み - インデックス未登録
カバレッジ|Search Console

インデックスの促進はどんな仕方でも確実に登録を得るわけではない。

もう一度、いうとサイトがGoogle検索に表示されない原因はインデックスとランキングの不調なので、両方とも好調に揃わないと上手く行かない。たとえインデックスされても検索されるキーワードに対してランキングが低ければ検索結果の位置付けが低いか消されていて見付からなくなる。

なのでインデックスを向上すればサイトのアクセスアップに繋がるとはかぎらないし、インデックス登録だけが上手く行っても低いランキングの影響で後から外されることがあり得る。

インデックス登録が得られない場合

クロールを促進してもインデックス登録を得られない場合はどうするべきか。

Search Consoleの除外のステータス

  • クロール済み - インデックス未登録
  • 検出 - インデックス未登録

参考:インデックス カバレッジ レポート

Search Consoleのカバレッジで、除外のステータスがあってクロール済みでインデックス未登録のURLはコンテンツの品質の影響で外された可能性がある。

その場合は登録を完了するためにランキングを上げるべく、ページの何よりもコンテンツの品質を改善しなくてはならない。

Googleはクロール済みのインデックス申請は不要という(URL 検査ツール)けど、しかしページを更新したら行うと登録に向けて良いと思うし、インデックスに登録済みの場合でも新しいサイト内容がランキングに反映し易くなるだろう。

除外のステータスの検出でインデックス未登録のURLはまだクロールされてないからサイト内容は把握されず、サイト評価も行われてない。インデックスを望むならば促進を行うとクロール済みの段階に持って行き易い。

インデックス登録を得るにはサイト評価のランキングの影響も考えなくてはならないけど、しかし同じサイトの似たような品質とリンクのページが等しくインデックスされないのはおかしいとか突如として多くのページがインデックス不良に陥ってしまったなんてときなどはインデックスの向上を本当に見直す必要がある。

サイトのマークアップのミスかサーバーの障害かクロールバジェットの不足(ページ数が多過ぎたりしてクローラーが十分に回り切れない)かそれこそインデックス自体に問題が生じていて登録されない状況だとランキングに注意しても仕様がない。

SEO対策でランキングが低ければインデックスに意味はないけれどもインデックスなしにランキングはないという検索エンジンからのアクセスアップの大前提がインデックスだからどんな場合でも真っ先に疎かにせずに見守りながらしっかり維持することが大切だ。

コメント