robots.txtのテストから設置までの手順

ブログを公開する時に忘れずに設置したいのがrobots.txtファイルです。このrobots.txtのテストから設置までの手順を解説します。

Initializing...

robots.txtとは

フォルダー、ファイル、URLの単位でgoogle等の検索エンジンへの登録の可否を制御するためのテキストファイルで、ブログのルートに配置します。ここでまちがってはいけないのが、robots.txtはブログ管理者の都合によるものではなく、あくまでも検索エンジンに無用なコンテンツを登録させないための手段だという点です。 google等の検索エンジンは定期的にあなたのサイトに訪れて、まんべんなくサイト内を検索し登録可能なものはすべて自分の検索エンジン内に取り込むもうと試みます。そしてこの作業にかけられる時間はほんのわずかな時間で決して十分なものではないという事です。この限られた時間内にサイト内の有益なコンテンツを拾い上げてもらうために逆に無用なコンテンツを登録しないように指示するのがこのファイルの目的です。これをクロールの最適化といいます。

ブログ管理者の都合により登録をしないコンテンツの場合は、htmlのヘッダー部にmetaステートメントで記述します。 例)

wordpressの場合は、robots.txtを自動生成する

ブログ初心者の場合そんなもの設置していませんよ。という方もいると思いますが、wordpressをお使いの場合、もしルートにrobots.txtがなければ自動的に生成したrobots.txtを返却します。自動生成されるrobots.txtは、wordpressのコアファイルであるwp-admin配下のファイルのみ登録不可とした下記のような内容となっています。

User-agent: *
Disallow: /wp-admin/
Allow: /wp/wp-admin/admin-ajax.php
※2017年2月追記:最新のwordpressでは、admin-ajax.phpも有効になっています。 admin-ajax.phpについて手動設置するときにも忘れないようにしてください!

robots.txtの書き方

robots.txtは、検索エンジンの指定とその制御および最後にサイトマップの指定に分かれます。

検索エンジンの指定

検索エンジンはgoogleの他にもいろいろとありますが、検索エンジンはUser-agentで指定します。通常は*(アスタリスク)ですべての検索エンジンを対象として書いてもかまわないでしょう。

User-agent: *

フォルダー、ファイル、URLの制御

検索を拒否する場合は、Disallow:で指定します。ターゲットにはフォルダー名やファイル名、URLが指定でき、/(スラッシュ)から書き始めます。フォルダーの場合、配下にあるサブフォルダーも対象となる事とワイルドカード指定として*(アスタリスク)を使用することができます。

例)
Disallow: /wp-admin/
Disallow: /category/
Disallow: /test.php

検索不可としてフォルダー内の一部だけ検索した場合は、まずDisallowで検索拒否した上で、Allow:で解除指定します。

例)
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
※admin-ajax.phpのみ検索させる場合

サイトマップの指定

robots.txtにサイトマップのURLを書き込見ます。

Sitemap: http://example.com/sitemap.xml.gz
wordpressを/wpの直下等サブフォルダーを利用してインストールしている場合は、/wp/wp-adminのようになります。

実際の設置はgoogle search consoleでテストしてから行う

実際の設置は、google search console(旧:google ウェブマスター)上で動作状況を確認してから設置します。

テストの仕方

まず、oogle search consoleの左側のクロールをクリックし表示されたサブメニューからrobots.txtテスターを選択します(下図の①の部分)。④の部分には現在の登録内容が表示されています。robots.txtが未登録の場合は前述した自動生成されたrobots.txtの内容が表示されているはずです(Google XML Sitemapsプラグインをインストールしている場合は、サイトマップのurlも追加されているかもしれません)。 robots_txt_tester テストは、④の部分にテストしたいrobots.txtの内容をコピー&ペーストしてから⑤にテストするURLを貼り付け右側のテストボタンを押します。テストボタンが許可済みもしくはブロック済みに表示がかわり状態が確認できます。 テスト結果の表示 なお、テストのために実際に当サイトが使用しているrobots.txtをサンプルとして掲載しましたので、使ってみてください。

User-agent: *
Disallow: /wp-admin/
Allow:    /wp-admin/admin-ajax.php

Sitemap: http://example.com/sitemap.xml.gz
このサンプルは必要最低限のみ記述しています。だいたいの方はこのサンプルのままで動作可能です。

サンプルの内容の説明

上記のサンプルとして提示した当robots.txtの内容を説明しましょう。 1行目:すべての検索エンジンを対象とします。 2行目:/wp-admin/配下をすべて登録不可とします。 3行目: /wp/wp-admin/admin-ajax.phpは、Google検索エンジンがレンダリングする際に必要です。Allowを設定してください。 5行目:サイトマップは圧縮してあるsitemap.xml.gzの方を使います。

robots.txtテスターの最新バージョンの表示時間について 上記の②の表示している時間について疑問に思ったことありませんか。ちょっと見で日本時間でもないし標準時間でもありません。実際に試したところ-16時間の時差があり、ロスアンゼルスの時刻であることがわかりました。たぶんgoogle search consoleのホストコンピュータがロスアンゼルス(米国東海岸?)にあるということではないかと思っています。

robots.txtをブログルートに配置する

さてテストが完了しこれでよしとなった場合には、前出したgoogle search console画面の⑥にある送信ボタンを使ってrobots.txtを配置します。 ※robots.txtは必ずルートに配置してください。これ以外の場所では動作しません。 送信ボタンを押すと以下のようなダイアログ画面が表示されます。ダウンロードボタンは、貼り付けてある内容をファイルとしてダウンロードする場合に使用します。アップロードされたバージョンボタンは、robots.txtの内容はgoogle search consoleにすぐに反映しないため、このボタンを使ってアップロードが正しくおこなわれたかどうか確認のために使用します。アップロードした内容に間違いがなければ、一番下にある送信ボタンでgoogleに更新を知らせましょう。更新サイクルは決まっているためすぐというわけにはいかないかもしれませんが、少しは早めに更新してくれるかもしれません。 robots_txt_tester2

robots.txtがうまくアップロードできない場合の対処

もしかしたら、User-agent:の前に変な記号が表示されていませんか? これはFTPソフトでテキストファイルをアップロードした場合に、自動的に付加されるBOMというもので、”EF BB BF”という3バイトから形成されたものです。FTPソフトの転送モードを自動モードやテキストモードからUTF8N(UTF8 non-BOM)という転送モードに変えてから再度お試しください。 ファイル名がまちがっていませんか? ファイル名は、robots.txtとsが付いています。まちがいないか再度確認してみてください。

 

以 上

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

スポンサーリンク
ページ上部へ戻る