robots.txt を使用して URL をブロックする

robots に関するよくある質問

robots に関する一般的な質問

robots.txt に関する質問

robots メタタグに関する質問

X-Robots-Tag HTTP ヘッダーに関する質問

上記以外のご質問がありましたら ウェブマスター ヘルプ フォーラムまでお寄せください。

robots に関する一般的な質問

ウェブサイトに robots.txt ファイルは必要ですか?

いいえ。Googlebot がウェブサイトにアクセスする際、まず robots.txt ファイルの取得を試みることによって、クロールの許可を求めます。robots.txt ファイルのないウェブサイトでは、通常、robots メタタグまたは X-Robots-Tag HTTP ヘッダーがクロールされ、問題なくインデックスに登録されます。

どの方法を使用すればよいですか?

場合によって変わります。つまり、それぞれの方法に長所があります。

  1. robots.txt: コンテンツのクロールによってサーバーで問題が発生する場合に使用します。たとえば、無限カレンダー スクリプトをクロールさせないような場合です。非公開コンテンツのブロックや正規化の処理には robots.txt を使用しないでください(非公開コンテンツのブロックにはサーバー側での認証を使用してください。正規化についてはヘルプセンターをご覧ください)。確実に URL をインデックスに登録しないようにする必要がある場合は、robots メタタグまたは X-Robots-Tag HTTP ヘッダーを代わりに使用します。
  2. robots メタタグ: 個別の HTML ページの検索結果での表示方法を制御する必要がある場合(またはページが表示されないようにする場合)に使用します。
  3. X-Robots-Tag HTTP ヘッダー: 検索結果での非 HTML コンテンツの表示方法を制御する必要がある場合(またはページが表示されないようにする場合)に使用します。

この方法を使用して他のユーザーのサイトを削除できますか?

いいえ。この方法は、自分でコードを変更したりファイルを追加したりできるサイトについてのみ有効です。サードパーティのサイトからコンテンツを削除する場合は、ウェブマスターに連絡してコンテンツを削除してもらう必要があります。

Google によるウェブサイトのクロール頻度を遅くすることはできますか?

通常、クロール頻度の設定Google Search Console のアカウントで調整できます。

robots.txt に関する質問

複数のウェブサイトで同じ robots.txt を使用しています。相対パスの代わりに完全な URL を使用できますか?

いいえ。robots.txt ファイル内のディレクティブは相対パスに対してのみ有効です(ただし「Sitemap:」は例外です)。

robots.txt ファイルをサブディレクトリに配置できますか?

いいえ。このファイルはウェブサイトの最上位のディレクトリに配置する必要があります。

非公開フォルダをブロックする必要があります。他のユーザーが robots.txt ファイルを読み取れないようにできますか?

いいえ。robots.txt は不特定多数のユーザーによる読み取りが可能です。コンテンツのフォルダやファイル名を公開しない場合は、robots.txt ファイルに記述しないでください。ユーザーエージェントや他の属性に基づいて異なる robots.txt ファイルを提供することはおすすめしません。

クロールを許可するために allow ディレクティブを含める必要がありますか?

いいえ。allow ディレクティブを含める必要はありません。allow ディレクティブは、同じ robots.txt ファイル内で disallow ディレクティブをオーバーライドする場合に使用します。

robots.txt ファイルに誤りがある場合や、サポートされていないディレクティブを使用した場合はどうなりますか?

ウェブクローラは高度な柔軟性を備えており、通常は、robots.txt ファイルに小さい誤りがあっても影響を受けません。一般に、起こりうる最大の問題は、正しくないまたはサポートされていないディレクティブが無視されることです。robots.txt ファイルの解釈においては、書かれていないことは知り得ないという点に留意してください。Google は、取得した robots.txt ファイルを解釈することしかできません。ただし、robots.txt ファイルに含まれる問題点について把握できているのであれば、問題の解決は簡単です。

どのプログラムを使用して robots.txt ファイルを作成すればよいですか?

有効なテキスト ファイルを作成できるものであれば何でも使用できます。robots.txt ファイルの作成によく使われるのは、メモ帳、TextEdit、vi、emacs などです。Google Search Console には、ウェブサイトの robots.txt ファイルの作成に役立つツールが用意されています。ウェブサイトに robots.txt ファイルを配置した後で、Google ウェブマスター ツールFetch as Googlebot 機能を使用して、robots.txt ファイルが有効かどうかを確認できます。Search Console は robots.txt ファイルを生成する場合にも役立ちます。

robots.txt で disallow ディレクティブを使用して Google によるページのクロールをブロックした場合、ページは検索結果に表示されなくなりますか?

Google によるページのクロールをブロックすると、そのページのランキングが低下したり、時間が経つにつれて表示されなくなったりする可能性があります。また、検索結果の下に表示される、ユーザーに提示する詳細テキストの量が少なくなる可能性もあります。これは、ページのコンテンツがないと、検索エンジンで処理する情報が大幅に減るためです。

ただし、robots.txt で Disallow を使用しても、ページが確実に検索結果に表示されなくなるとは限りません。外部からのリンクなどの情報に基づいて、引き続き、関連性のあるページと判断されることがあります。ページのインデックス登録を明示的にブロックする必要がある場合は、この代わりに noindex robots メタタグか X-Robots-Tag HTTP ヘッダーを使用する必要があります。この場合、robots.txt でそのページを不許可にしないでください。タグを認識して、それに従うためには、ページがクロールされる必要があります。

robots.txt ファイルの変更が検索結果に反映されるまでにどれくらいかかりますか?

まず、robots.txt ファイルのキャッシュを更新する必要があります(通常、コンテンツは最大 1 日間キャッシュされます)。変更が検出されても、クロールとインデックス登録の処理は複雑で、個別の URL で時間がかかる場合があるため、タイムラインを正確に示すことはできません。また、robots.txt ファイルで URL へのアクセスを不許可にし、その URL をクロールできない場合でも、検索結果の表示に残る場合があることに注意してください。Google によるアクセスをブロックしたページの早急な削除をご希望の場合は、Google Search Console から削除リクエストを送信してください。

AJAX クロールの URL を robots.txt ファイルで指定するにはどうすればよいですか?

AJAX クロールの提案を使用する URL を指定するときに、クロール対象の URL を使用する必要があります。

ウェブサイトのすべてのクロールを一時的に停止するにはどうすればよいですか?

robots.txt ファイルも含め、すべての URL に対して HTTP 結果コード 503 を返すことで、すべてのクロールを一時的に停止できます。robots.txt ファイルは、再びアクセスできるようになるまで定期的に再試行されます。robots.txt ファイルを変更してクロールを不許可にすることはおすすめしません。

使用しているサーバーでは大文字と小文字が区別されません。一部のフォルダのクロールを完全に不許可にするにはどうすればよいですか?

robots.txt ファイルのディレクティブは大文字と小文字が区別されます。この場合は、正規化の方法を使用して、1 つのバージョンの URL のみがインデックスに登録されるようにすることをおすすめします。こうすると、robots.txt ファイルを簡潔にできます。この方法が不可能な場合は、フォルダ名の一般的な組み合わせを列記するか、名前全体ではなく最初の数文字だけを使用して名前をできる限り短くすることをおすすめします。たとえば、「/MyPrivateFolder」の大文字と小文字のすべての組み合わせを列記する代わりに、「/MyP」の組み合わせを列記します(同じ名前で他にクロール可能な URL が存在しないことが確実な場合)。または、クロールに問題がない場合は、robots メタタグまたは X-Robots-Tag HTTP ヘッダーを代わりに使用することもできます。

robots.txt ファイルを含むすべての URL に対して 403「禁止」を返しています。それでもまだサイトがクロールされるのはなぜですか?

HTTP 結果コード 403 は、他の 4xx HTTP 結果コードと同じように、robots.txt ファイルが存在しないことを示すものと認識されます。このため、通常、クローラはそのウェブサイトのすべての URL をクロールできるものと判断します。ウェブサイトのクロールをブロックするには、通常どおり HTTP 結果コード 200「OK」で、「disallow」を適切に指定した robots.txt を返す必要があります。

robots メタタグに関する質問

robots メタタグは robots.txt ファイルに代わるものですか?

いいえ。robots.txt ファイルは、アクセスされるページを制御します。robots メタタグはページをインデックスに登録するかどうかを制御しますが、このタグが認識されるには、ページがクロールされる必要があります。ページのクロールに問題がある場合(ページがサーバーに大きな負荷をかける場合など)に、robots.txt ファイルを使用します。検索結果にページを表示するかどうかを制御する場合は、robots メタタグを使用できます。

robots メタタグを使用して、ページの一部分をインデックスに登録しないようにできますか?

いいえ。robots メタタグはページレベルの設定です。

robots メタタグを <head> セクションの外側で使用できますか?

いいえ。現在、robots メタタグはページの <head> セクション内に記述する必要があります。

robots メタタグでクロールを不許可にできますか?

いいえ。現在、robots メタタグに noindex と指定されている場合でも、メタタグが変更されたかどうかをチェックするために、Google は時折その URL を再クロールする必要があります。

nofollow robots メタタグと rel="nofollow" リンク属性はどのように違うのですか?

nofollow robots メタタグは、ページ上のすべてのリンクに適用されます。rel="nofollow" リンク属性は、ページ上の特定のリンクにのみ適用されます。rel="nofollow" リンク属性について詳しくは、ヘルプセンターでユーザー生成スパムおよび rel="nofollow" についての記事をご覧ください。

X-Robots-Tag HTTP ヘッダーに関する質問

URL の X-Robots-Tag を確認するにはどうすればよいですか?

サーバーのヘッダーは、ウェブベースの server header checker(サーバー ヘッダー確認ツール)を使用するか、Google Search Console の「Fetch as Googlebot」機能を使用すると簡単に確認できます。

この記事は役に立ちましたか?
改善できる点がありましたらお聞かせください。