このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

PerMan Surfer は robot.txt を無視する?

発言者:田中求之
( Date Thursday, April 16, 1998 15:15:06 )


PerMan Surfer (波乗り野郎)って、robots.txt を無視するんでしょうか?

実は、先週から、このサイトは robots.txt で Web オートパイロット等の
アクセスを制限するようにしてます。以下のようなファイルを書いておいた
のですが、これを無視して PerMan が入り込んでいます(別発言のサーバーの
リスタート記録を見てもらえばわかりますが、今日はかなり頻繁にリスタート
してますが、これ PerMan の集中アクセスの時に起きてます)。

robots.txt の内容

User-Agent:PerMan
disallow:/

User-Agent:Mozilla
disallow:/

User-Agent:MSIE
disallow:/

User-Agent:Windows
disallow:/

これではだめなのかな? Agent として

Mozilla/3.0 (compatible; PerMan Surfer 3.0b1; Macintosh)

を名のってますので、これでひっかかると思ったのだけどな?

田中求之 さんからのコメント
( Thursday, April 16, 1998 15:17:33 )

おまけに FORM の ACTION に書いてあるリンクまで GET しようとするという
お間抜けぶりを発揮してくれて笑えるんですが…

b1 なんてのを使ってるせいかな?

重松修 さんからのコメント
( Thursday, April 16, 1998 21:12:58 )

スクリプト(会議室)の方で、波乗り犬をはじいてしまえばいいんでない
でしょうか?それとも、そういう問題ではなくて?

robot(s).txtは取得しているようですが。理解するかどうかは別の次元
ですね。でも、使わないなら、何のために取得しているんだろう。

田中求之 さんからのコメント
( Thursday, April 16, 1998 22:51:06 )

>スクリプト(会議室)の方で、波乗り犬をはじいてしまえばいいんでない
>でしょうか?それとも、そういう問題ではなくて?

えっと、私のサイトだけの対処方法であれば、それでいいんですよ。本当に困っている
のであれば、PreProcessor を一つつくって、はじいてしまえばいいわけです。

でも、Robot あるいはそれに類するプログラムは robots.txt に従うということ
になっているわけです。もちろん、強制力はないし、実際、Robot でも無視するやつは
いる。だからといって、Robot 以上にサーバーに負担をかけるオートパイロットが
無視するようなことでいいんだろうか? という一般的な話として疑問を感じる
わけです。

私の robots.txt の書き方が間違っているのかもしれないし、PerMan Surfer が
ベータ版である故だとか、あるいはユーザー側が故意に Robots.txt を無視するような
設定(そういうのがあるのかどうか知りませんが)で使っているのかもしれない。
ですから、今回のことで PerMan Surfer がどうこうというのは、やや公正さを
欠くのですが、サイトの運用者として、ちょっと納得できないなと感じている
わけです。

なお、PerMan でサーバーが落ちること事態は気にしてません。それは WebSTAR 3.0
がタコだから、という別の問題ですので(原因を絞り込むために、私自身が NetSlap
などで負荷テストを行っていることもあって、オートパイロットソフトは、しばらく
止めてもらうようにしてるわけです)。

たまちゃん さんからのコメント
( Thursday, April 16, 1998 23:52:16 )

今、マニュアルをダウンロードして、robotに関する記述を探すと、

「robots.txtって?」

という項目がありました。「robots.txtとは各WWWサーバの管理者の判断に
より置いてある、波乗り禁止情報です。」(原文引用)と書いてあり、思わず
苦笑してしまいました。なお、robots.txtを参照するというチェックボックス
があり、これをチェックしないと、robots.txtを無視し、波乗りを続けるよう
で、チェックした場合には波乗りにいっても何も取ってこない場合が発生する
との旨が記されています。

田中求之 さんからのコメント
( Friday, April 17, 1998 13:08:05 )

わざわざ調べていただいて済みません。本当は私が調べるべきだったの
ですが、昨夜、自宅のマックのハードディスクの一つ(起動システムの
ボリューム)がクラッシュし、その復旧(というか完全再インストール)
に追われていました。

で、本題ですが、

>なお、robots.txtを参照するというチェックボックス
>があり、これをチェックしないと、robots.txtを無視し、波乗りを続けるよう
>で、チェックした場合には波乗りにいっても何も取ってこない場合が発生する
>との旨が記されています。

やはり、ユーザー側で無視できるようになっていたわけですね。しかし、
本来はデフォルトで robots を参照するべきだと思うんですけどね。

ま、これで、悪質な場合には、そのホストやサイトを出入り禁止にしても
いいということがわかりましたので(ユーザー側に選択の責任があるので)
今後はそういう方針で行こう。

たまちゃん さんからのコメント
( Friday, April 17, 1998 13:32:54 )

お昼休みにパーマンくん(3.0正式版)を自分のサイトに対して動かしてみま
した。デフォルトでは、robots.txtを参照するようになっていました。一応
は、参照したものを守ってくれていたようです。しかし、動かしてみて、「こ
いつは掟破りの無法者か」と思ってしまいました(表現が拙くてすみませ
ん)。とにかく、情け容赦なくアタックをかけてくれますね。

>>今後はそういう方針で行こう。

いってください。いってください。(^_^)

野本夏俊 さんからのコメント
( Friday, April 17, 1998 15:07:25 )

昨日からここへのアクセスが極端に悪くなったと思ったら、こういうことがあったんですね。 
波乗り野郎は最近3.0にアップグレードしまして、その新機能の目玉の1つとして、
 CGIファイルの取得ができるようになりました。 ぼくもアップグレードしたときに、
真っ先にこの会議室のオートパイロットを 思いつきました。(結局思いとどまりましたが...)
robots.txtについての機能はそれにともなって追加されたようです。 

>その他、要望の多かった機能を追加
>robots.txtに従うことでネットワークの負荷の妨げにならないようできます。
(マニュアルからの引用)

これを読んだ限りでは、
「今までは無視していたが、これからはrobots.txtに従うこともできるようになった」
ということなのかもしれません。
狩野さんの「AppleScript Lab」でも昨日からすごくアクセスしづらくなってしまいました。
同じ理由によるのかもしれませんね。
これからは波乗り野郎の侵入が頻繁になることもあると思いますから、
それなりの対策が必要になると思います。

→  波乗り野郎ダウンロードページ(マニュアルのみのダウンロードも可能)

田中求之 さんからのコメント
( Friday, April 17, 1998 16:29:59 )

>真っ先にこの会議室のオートパイロットを 思いつきました。

誤解のないようにいっておきますが、普段は別に PerMan でアクセスしてもらっても
構わないのです。これまで robots.txt は置いてませんでした。基本的には、来る
ものは拒まずという方針なのです。

PerMan のアクセスぐらいでへこたれる CGI じゃないですから (^_^)

ただ、今回の WebSTAR 3.0 のテストのように、私の方の都合でアクセスは遠慮して
もらいたいということがあります。その時は、Robots.txt を置きますので、それに
したがってもらいたいな、ということなんですよ。

田中求之 さんからのコメント
( Wednesday, April 22, 1998 15:17:57 )

どうやら WebSTAR 3.0 の異常終了を引き起こしていた犯人が判明しそうな気配で、
連続して運用できる状況になってきたようですので、Robots.txt は削除しておき
ました。 PerMan を使う方は、どうぞ使ってみてください。



望月 方博 さんからのコメント
( Thursday, May 14, 1998 16:32:25 )

こんにちわ。私、とあるメーカーの下請けでロボット(波乗り犬ではありません)
を作っています。たまたまここをみつけました。
波乗り犬が自agent名とrobots.txt内のuser-agen行に書かれた文字列をどう
比較するかは存じませんが、自agent名の名乗り方が薄汚いので、避けたいと
思っている方では困ってしまうところでしょうね。
「PerMan」というのはメーカーですよね? これだけだと認識する可能性は
低いと思いますよ。へたをすると、「Mozilla/3.0 (compatible; PerMan 
Surfer 3.0b1; Macintosh)」という長ったらしいのと完全に近く一致しない
と認識しないのかもしれませんね。(「自agent名と一致する...」という規定
ですから。)
尚、user-agentに「*」(*一文字だけ)が書ける事はご存じでしょうか?
当然これは「すべてのロボットに告ぐ」という意味になりますので、選択的に
進入禁止したい場合には使えませんが...

→  ロボット情報

田中求之 さんからのコメント
( Thursday, May 14, 1998 16:42:53 )

一括して拒否したい場合には * で済むんですが、やっぱ、Altavista や goo とかそういう
メジャーなサイトの検索エンジンには登録されて欲しいという気持ちはありますので (^_^;
(それに大手の検索サイトのエンジンは、かならず20〜30秒ほどの間隔をとってアクセス
するという、非常にマナーの良いものが多い)、きっちりと選択的にコントロールしたい
んですよね。

最終的には、Robots.txt をどのように解釈するかは、そのロボットの製作者次第ですし
波乗りのようにRobots.txt を無視する (?) という設定まであるとなると、厳密に
選択的制限を行うことは無理と言っても良い状況ですよね。ま、Web の現状として
しかたがないと割り切るしかない(本気でブロックしたければ、robots.txt 以外の
手段を講じるしかない)んだろうと思います。

関係ないですけど、これだけいろいろなロボットが活動している状況では、アクセスカウンター
で何人アクセスがあった、なんてのがますます意味をなさないですねぇ。もちろん、アクセス
状況を把握するというサーバーの管理者にとっての情報として価値はありますが。
このサイトでも、URL の解釈に失敗しているロボットが、延々とアクセスを重ねている
こともあります(立ち上がったころの goo のロボットは本当にバカだった…)。