「クローラー」という言葉をご存知ですか。簡単にいうと、インターネット上を巡回して情報を集めるロボットのことです。
クローラーにWebサイトを巡回してもらうことで、Google検索などの検索結果に表示されます。そのため、クローラーにWebサイトを巡回してもらうことは、SEOで重要です。しかし、一見重要に見えるこのクロールですが、クロールをブロックしたほうがSEO上で効果的な場合があります。
ここでは、検索エンジンからのクロールをブロックするべき理由と、ブロックを検討すべきページの見分け方、具体的なブロック手法についてご説明します。
目次
クローラーを理解するには、Googleなど検索エンジンが提供するGoogle検索の仕組みを知る必要があります。
Googleなどの検索エンジンは、
という仕組みで動いています。
この情報収集をするロボットを「クローラー」と呼び、ロボットがWebサイトの情報を収集することを「クロールする」と言います。検索エンジンのクローラーに検知されて(クロールされて)初めて、Webサイトは検索エンジンに掲載されることになります。
クローラーの機能詳細とご自分のサイト内でどのように設定されているか確認する方法はこちらにまとめていますので気になる方はご覧ください。
Webページが検索エンジンでヒットするためには、検索エンジンにクロールされる必要があり、クローラーに検知されて検索エンジンに掲載されることを「インデックスされる」と表現します。いくらサイトを作っても誰も訪問してくれない…という場合、検索エンジンに検知されていない=インデックスされていない可能性があります。
その一方で、あえて検索エンジンからのクロールをブロックする方がいい場合があります。例えば、テスト中でまだ公開したくないページや、会員限定のページの場合、インデックス不要なページなので、クロールをしてもらう必要はありません。この場合は、クローラーに対してクロールが不要であることを伝える対策が有効です。
また、SEO上不利とされる低品質な重複コンテンツ(類似記事がある、画像メインのLP、問い合わせやサンクスページなどの中身が少ないページ)をクロールさせてしまうと、質の良いページへのクロール頻度が減ってしまう可能性があるため、クロールをさせるページとさせないページを制御する必要があるのです。
「クローラーをブロックする」というと、何やら危なげな施策というイメージが浮かぶかもしれませんが、正しく理解して活用することで、Webサイトの運営にとって大きなメリットを生み出すことができます。
では、どのようなページをブロックすべきなのでしょうか。
例としては、
などが挙げられます。
それぞれのページ内容について、以下でもう少し具体的に説明します。
まずブロックすべきなのは、クロールされることでSEO上不利になってしまうページです。
例えば、サイト構造上は必要だけれど、他のページに似たような内容がすでにあり、コピーコンテンツにみなされてしまう可能性がある場合などが考えられます。また、お問い合わせページやサンクスページなどは、キーワード集客を目的に公開しているページではありません。
こういった「SEO上は意味のないページ」をブロックしておけば、公開されている記事はすべて質の良い記事ということになり、Webサイト全体の評価向上が期待できます。
設定によっては、プログラムで自動生成されるページもあります。CMSを利用している場合、タグやカテゴリを一覧化しただけのページが作られることがありますよね。これらはわざわざ検索するユーザーもいないので、あえてクロールされる必要はありません。
検索エンジンから訪問されると支障があるページもあります。
具体的には、
※例えば、メルマガからリンクを貼っている特設ページなど。こういうページの場合、Webサイトからの導線とは切り離したページである場合が多いと思います。もし検索エンジンからアクセスできてしまうと、メルマガから訪問したお客さんの特別感が失われます。
ここではサイトを検索エンジンに掲載させないための方法をご紹介していますが、「すでに検索エンジンにクロールされているページのインデックスを削除したい」という場合もあると思います。
例えば、
などが該当します。
ここで紹介する方法は、あくまでも検索エンジンに登録されないようにするための方法なので、上記の状況になった場合に設定しても、検索エンジンからのインデックスがなくなるわけではありません。
そこで、すぐに検索エンジンからのインデックスを削除したい場合は、URL削除ツールを使うことをオススメします。具体的な設定方法については、以下の記事でご紹介しますので、あわせてご確認ください。
検索エンジンからのクロールをブロックする方法として、以下3つの方法をご紹介します。これらは、Google Search Console ヘルプにも記載されている方法です。
以下、詳しく解説します。
「robots.txt」というファイルを作成し、クロールをブロックしたいディレクトリにアップロードする方法です。
robots.txtとは、検索エンジンのクローラーの動きを制御する命令を書くためのファイルです。クロールしてほしくないページとクロールしてほしいページを伝える役割があります。その他にはsitmap.xmlの場所をクローラーに知らせる役割もあります。
robots.txtについては、以下の記事で解説していますので、詳しくはご覧ください。
では、具体的なrobots.txtの書き方を説明します。
クロールをブロックしたい場合の基本的な書き方は、以下のとおりです。
/test/というディレクトリ以下のクロールをブロックしたい場合の例として記述します。
「User-agent:」とは、制御したいクローラーを記載する部分です。Googlebotなど検索エンジンを指定したい場合は細かく書くこともできますが、「*(アスタリスク)」を記載すればすべてのクローラーが対象となります。基本的には*を記載しましょう。
「Disallow:」でクローラーの訪問をブロックしたいページについて指定します。特定ディレクトリ以下をブロックしたい場合は、「/ディレクトリ名/」と書きます。このとき、「/」と記載するとサイト全体のクロールが拒否されてしまい、検索エンジンに登録されない事態になってしまいます。注意しましょう。
ディレクトリ限定ではなく、特定のページのクロールをブロックしたい場合は、「Disallow:/test/sample.html」のようにディレクトリに続けてファイル名を指定します。
作成できたら、記述内容が正しいかをテストしましょう。Google Search Consoleの中に「robots.txtテスター」というツールが準備されているので活用してください。
robots.txtが作成できたら、FTPソフトを利用してアップロードをします。アップロード先は、「https://digital-marketing.jp/robots.txt」のようにルートディレクトリ(一番上の階層)に指定します。アップロード先を間違ってしまうと、いくら正しく記述できていても動作しないので注意しましょう。
htmlファイル内のメタタグの記述でクローラーをブロックする方法です。これを指定しておくと、そのページへのリンクを知っているユーザーはアクセスできますが、検索結果には表示されなくなります。ページごとに設定できるので、複数のページに設定したい場合には便利な方法です。
noindexと同じく、クローラーに指示を与えるタグにnofollowがあります。Noindexはクロールをブロックするためのタグですが、nofollowはクローラーがリンクをたどるのを禁止するタグです。意味合いは全く違うので、正しく理解しましょう。詳しくは以下の記事でご紹介していますので、ご参照ください。
html内の
~で囲まれた部分に、以下のタグを記述します。この方法を利用するときの注意点は、robots.txtと併用しないことです。robots.txtでファイルへのクロールそのものをブロックしてしまうと、クローラーはmetaタグに記載されたnoindexを認識しません。
Robots.txtを利用したブロックの場合、他のサイトからリンクされていればインデックスされてしまうという特徴があります。そのため、robots.txtと併用すると「noindexが認識されず、他のページからリンクされているので、ページが検索結果に引き続き表示されてしまう」という事態になる可能性があります。
検索結果に表示したくない情報がある場合、そのファイルをパスワードで保護するのが一番確実な方法です。クローラーもファイルの内容を見ることができないので、検索エンジンに表示されないだけでなく、外部から中身を見られることもありません。
パスワードで保護する場合に使われるのが、「.htaccess」というファイルを作成し、アップロードする方法です。この方法を「Basic認証」とも言います。
.htaccessファイルとは、Apacheを用いたWebサーバーをコントロールするための設定ファイルのことです。パスワード保護によるアクセス制限の他、404エラーページ、301リダイレクト、特定のIPアドレスからのアクセス拒否や許可などを設定できます。
.htaccessファイルについては、以下のページでご紹介しますので、あわせてご確認ください。
パスワード制限をかけたい場合は、パスワードをかけたいディレクトリに「.htaccess」と「.htpassword」という2つのファイルを作成します。
.htaccessファイルには、以下の4行を記述します。
AuthUserFileで記載するのは、後述する.htpasswordファイルの場所ですが、FTPのディレクトリではない点に注意しましょう。サーバーから見たフルパスを記述することになるので、レンタルサーバーのWebサイトなどで表示を確認してください。
.htpasswordには以下の内容を記述します。
ユーザー認証の際に必要なユーザー名とパスワードを対になるように1行ずつ記載していきます。
作成した.htaccessと.htpasswordの両ファイルをFTPソフトなどでサーバーに上げれば設定は完了です。
.htaccessはアップロードしたディレクトリから下位のディレクトリの制御をするので、パスワード制限をかけたいディレクトリにアップロードするようにしましょう。
Webサイト内のコンテンツによっては、検索エンジンに表示されると都合が悪い物もあります。検索エンジンのクロールのブロックを設定することで、この問題を解決できます。
今回は、
という3つの方法について具体的に解説しました。
適切にクロールをブロックすれば、ユーザーの利便性も上がり、SEO上の評価も良くなる効果が期待できます。まだ導入したことのない方は、必要に応じて設定してみてください。
この記事をご覧いただいている皆様へ。 このページは、SEO情報ブログ「ディーエムソリューションズの社員が作った、【SEOまとめ】」にて公開さ…
この記事をご覧いただいている皆様へ。 このページは、SEO情報ブログ「ディーエムソリューションズの社員が作った、【SEOまとめ】」にて公開さ…
この記事は、The Moz Blogに掲載された以下の記事を日本語訳したものです。 原文:「The New Link Building Su…
Googleは、自分たちの使命を「世界中の情報を整理し、世界中の人がアクセスできて使えるようにすること」とし、ユーザーが求めている情報を検索…
SEO対策やサイト・ブログ運用をしていると「インデックス」というワードをよく耳にする方が多いのではないでしょうか?インデックスは、これからも…
新年あけましておめでとうございます! あっという間に2021年が終わり、2022年になりました。 日々進化していくWebマーケティング業界で…
今話題のAIによるコンテンツ自動生成機能も!SEO対策に本当に必要な機能だけを搭載した使いやすさとコストパフォーマンスに優れたWeb集客支援ツールです。
Webマーケティングに関わる施策全般をワンストップで
ご提供します。
お気軽にご相談ください。
Webマーケティング最新ニュースのレポートや無料セミナーの先行案内が届く、お得なメルマガ配信中!