robots.txtの一文字ディレクトリ名での失敗

先日より、Google ウェブマスターツール でなぜか見かけないクロールエラーを発見。
数日様子を見てみたものの、特に改善も見られないため少し見てみることにしました。

Google ウェブマスターツール でのメッセージとしては、「robots.txt によりアクセスが制限されています」というもの。
しかしながら、該当するページについてはすべてインデックス されており、キャッシュも残っている状態でした。

そのキャッシュ日を基準アレコレ考えていると、おおよそ、新しいコンテンツ作成のためにクロール拒否を新たに行ったディレクトリを思い出し、
以下のようにrobots.txt での指定について、お恥ずかしながら始めて知った点について簡単にまとめておきました。

robots.txt の「/」スラッシュ無しで「一文字」のディレクトリ名を指定している場合

robots.txt でのディレクトリの指定で以下のように「/」スラッシュの有り無しの場合、
基本的には以下のように認識していました。

Disallow: /test/
test ディレクトリ以下全部拒否、test/index.html は許可
Disallow: /test
test ディレクトリ以下全部拒否、test/index.html も拒否

しかしながら、指定しているディレクトリ名が一文字など、
他のディレクトリ名とかぶる場合、そのディレクトリも対象となってしまうみたいです。
※Google の認識のみ

例えば、以下のように「/m/」というディレクトリを指定したい場合。

Disallow: /m

のように個人的には記述して/m/ディレクトリとm/index.html を対象としていたつもりですが、
/mobile や/moment など、正規表現でもないのに/m~ に絡むディレクトリすべて対象となってしまっていたようです。

なので、/m/ 以下全部と/m/index.html を指定したい場合、

Disallow: /m/index.html
Disallow: /m/
(一文字のディレクトリ名って使用頻度少ないかも知れませんが)

と指定するほうがベターなようです。
※違いますかね?

すでにご周知の件かと思いますが備忘録として。


7/25 追記
Google ウェブマスターツールにて、robots.txt、クロールエラーであったファイルが正常に認識されていることを確認。

change_history