robots.txtの構文チェックと動作確認
Search Consoleにはrobots.txtに記載されている内容の文法が間違っていないかどうかをチェックし、クロールをブロックするために記述した内容が希望する通りに動作するかどうかテストを行う機能が用意されています。ここではSearch Consoleを使ってrobots.txtのテストを行う方法について解説します。
(2022 年 04 月 22 日公開 / 2022 年 04 月 22 日更新)
robots.txtの構文チェック
robots.txtに記載されている内容が文法的に間違っていないかどうか確認する方法です。Search Consoleにログインし、対象のサイトのダッシュボードを表示して下さい。
画面左側の「クロール」メニューの中にある「robots.txt テスター」メニューをクリックして下さい。
「robots.txt テスター」画面が表示されます。対象のサイトでrobots.txtが設置されている場合は自動的に内容が読み込まれて画面に表示されます。
robots.txtを設置しているのに表示されない場合は、(1)ファイルの名前が違う、(2)ルートディレクトリ以外に設置している、(3)robots.txtへアクセスできないように制限がかかっている、などについて確認して下さい。
robots.txtの内容が表示されている左下を見て下さい。現在のrobots.txtファイルは構文的に問題がないのでエラー数及び警告数が0となっています。
それではわざとrobots.txtを間違えた構文で記載してみます。「Disallow:」と記載するところを「Disalow:」と記載したrobots.txtを設置した後で、改めて「robots.txt テスター」画面を表示すると次のように警告数が1と表示されました。どの行で警告が表示されているのかも画面上で確認できます。
今度は「Disallow:」と記載するところを「Disallows:」と記載したrobots.txtを設置した後で、改めて「robots.txt テスター」画面を表示すると次のようにエラー数が1と表示されました。どの行でエラーが表示されているのかも画面上で確認できます。(エラーと警告の違いはちょっと分かりませんでした)。
このように実際にサイトに設置しているrobots.txtの構文が間違っていないかどうかSearch Consoleの画面上で確認することができます。(robots.txtの書き方については「robots.txtの書き方と作成方法」を参照して下さい)。
画面上でrobots.txtを修正して確認
「robots.txt テスター」画面を表示するとサイトに実際に設置されているrobots.txtを読み込んで表示されますが、この画面上で直接robots.txtを書き換えて構文的に問題無いかどうかチェックすることができます。(ただし、ここで修正したからといって実際のrobots.txtの中身が書き換わるわけではありません)。
では実際に行ってみます。robots.txtの内容が表示されているところで、修正したい場所にカーソルを合わせます。
キーボードから直接文字を入力することで追加したり修正したりすることができます。
間違った構文を入力すると、エラーや警告が表示されます。
修正したとしても実際に更新されるわけではないのですが、画面上でrobots.txtを修正する機能はrobots.txtを修正する前に事前に確認したり、この後で解説するrobots.txtが意図した通りに動作するかどうか確認する時に便利です。
robots.txtの内容が意図した通りにクロールをブロックするかテスト
robots.txtは特定のディレクトリやファイルへのクロールをブロックしたい場合に使用されるものです。「robots.txt テスター」の機能を使うと、robots.txtに記載した内容で本当に意図した通りのブロックが行われるかどうか、またブロックしたくないファイルなどが間違ってブロックされていないかどうかをテストして確認することができます。
では実際に試してみます。現在の内容は次のようになっているとします(サイトマップの部分は省略しています)。全てのクローラーに対して全てのファイルのクロールを許可しています。
User-Agent: * Disallow:
画面下部のテキストボックスにブロックされているかどうか確認したいファイルへのパスを入力します。
その後で右側に表示されている「テスト」をクリックして下さい。
入力したファイルがクロールを許可されている場合は「テスト」と表示されていた部分が「許可済み」と表示されます。またrobots.txtで明示的に許可している場合は、画面上でハイライト表示されます。
別のファイルでも同じように確認してみます。
「テスト」をクリックしてみると今回も同じように「テスト」と表示されていた部分が「許可済み」と表示されます。
-- --
robots.txtの内容を画面上で次のように変更しました。「/cgi-bin/」ディレクトリに含まれるファイルなどへのクロールをブロックしますが「/cgi-bin/test.php」だけはクロールを許可しています。
User-Agent: * Disallow: /cgi-bin/ Allow: /cgi-bin/test.php
ブロックしてあるファイルを画面下部のテキストボックスに入力します。
「テスト」をクリックしてみると今回は「テスト」と表示されていた部分が「ブロック済み」と表示されます。
今度は「Allow」を使って許可してあるファイルを画面下部のテキストボックスに入力します。
「テスト」をクリックしてみると「テスト」と表示されていた部分が「許可済み」と表示されます。
このように現在のrobots.txtの内容で、どのファイルがブロックされるかどうかをすぐにテストして確認することができます。
-- --
ここまではブロックするかどうかの対象クローラーとしてデフォルトで設定している「Googlebot」を使用してきました。どのクローラーを対象にしているのかは「テスト」の前に表示されています。
「Googlebot」と表示されている個所をクリックすると、あらかじめ用意されているGoogleのクローラーしか選べませんが別のクローラーに変更することができます。
クローラーを変えてテストしたい場合に利用されてみて下さい。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。