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、クロールエラーであったファイルが正常に認識されていることを確認。

PayPalとGoogle Checkoutだけ決済画面

現状普通に使われているインターネット上での支払い方法やNFC関連など、
いろいろな体裁含めた決済方法があるかと思いますが、

ここのところとくにいろんな意味をすっとばして、
PayPalとGoogle Checkout “だけ” のポップアップの決済画面が妙に気に入ってます。

けっしてめんどくさいということではなく、ある意味共通ってのもいいっすよね。

日本でも流行ってくれないかなぁ。

cf. グーグル、ウェブアプリ内課金サービスを開始–「Chrome Web Store」以外も対象に – CNET Japan

Chromeの拡張機能が突然消えた時の対処法 参考

今朝方、いつも通りに仕事場のPCでChrome を立ち上げたところ、なにやら見たことのないエラーメッセージが…。

一応(?)、そのまま立ち上がったもののブックマークが消えていたので、
普通に”Chromeの設定(右上のレンチマーク)”から表示させてみたところ、いつも通りに表示。

嫌な予感が漂いつつも作業に入るとなんか変…。

よくよく見てみると、なんと”拡張機能”が丸ごとすべて消えている状態…。

インストールしていた拡張機能名をすべて覚えている訳もなく、
どうしようかと思っていたところ、下記の記事を発見。

» インストール済みの拡張機能、テーマ、設定等が突然使用できなくなる。 – Chrome ヘルプフォーラム
https://www.google.com/support/forum/p/chrome/thread?tid=552fa83680d613ff&hl=ja

あまり遭遇する機会もないかと思いますが、また自分でやってしまいそうな気がするので、
参考までに簡単にまとめておきました。

以下順番。

①Preferences.bad ファイルを探す
記事中にあるように、Chrome がインストールされているフォルダ内の"Preferences.bad"ファイルを探す。
XPであれば、「C:\Documents and Settings\ユーザー名\Local Settings\Application Data\Google\Chrome\User Data\Default」になるかと。
②Preferences.bad を開いて、「"path": "」で始まる行を探す
"path": " に続く文字列がもともとインストールしていた拡張機能のIDになるそうです。
③Chrome Web Store で使っていた拡張機能を検索
「https://chrome.google.com/extensions/detail/[拡張機能のID]?hl=ja」でOK。※日本語の場合
ちなみに、IDは「"path": "bfbameneiokkgbdmiekhjnmfkcnldhhm\\0.3.1_0"」となっていれば\(円マークまたはバックスラッシュ前まで)赤字の部分です。※[]カッコなし
https://chrome.google.com/extensions/detail/bfbameneiokkgbdmiekhjnmfkcnldhhm?hl=ja といった感じです。
references.bad 内に「"path": "plugin/」とかといった、今回探している趣旨のIDではないパスもあります。

また、上記のChrome フォルダ内の Local Storage フォルダ内に、”chrome-extension_文字列_0.localstorage” というファイルが残っていれば、
以前使用していた拡張機能の設定をそのまま残せるようです。
※この「文字列」部分が拡張機能のIDでもあります。

エクステンション だけでなく、インストール していたアプリケーション のIDもPreferences.bad 内に記述されてました。
すでにChrome Web Store に存在していない拡張機能もありましたが、基本的には上記の手順で復活しました。

change_history