[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

9. 付録

この章は,私が役に立つと考えるものへの参照も含んでいます.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

9.1 ロボットの排除

Wgetに,進行中に利用可能なすべてのデータを吸い上げながら,ウェブサイト 中をあてもなく歩きまわらせることは非常に簡単です.‘wget -r site’とその設定です.すばらしいでしょうか?サーバ管理者にとっては そうではありません.

Wgetが静的なページを回収している限り,そして適切なレートで行なわれてい る限り(‘--wait’オプションを参照してください),余り問題ありません. 問題は,Wgetが静的なページとほとんどのCGIを要求するページの間の違いを伝 えることができないことにあります.InfoファイルをHTMLに変換するCGI Perlスクリプトで処理させるセクションを持つサイトを知っています.スクリ プトは遅いのですが,人間のユーザが予備のInfoファイルを閲覧するのに十分 うまく動作します.しかし,Wgetで再帰ダウンロードしている人の中に,スク リプト全体のすべてのInfoファイルへのリンクがある索引ページでつまづく人 がいるとき,そのシステムはユーザが役に立つものを提供すること無くやって きます(Infoファイルを変換するこの処理はローカルに行なわれるべきで,イン ストールされているすべてのGNUのソフトウェアに対するInfoドキュメントは infoコマンドで利用可能にすべきです).

このような問題を避けるため,うまく動作するロボットから保護する必要があ るドキュメントのプライバシーを保護することと同様に,ロボット拒否 (robot exclusion)の概念が導入されました.その考え方とは,サーバの管理 者とドキュメントの著者が,ロボットから保護したい,そしてアクセスを許可 したいサイトの部分を指定することを可能にすることです.

最も人気のあるメカニズムで,すべての主要なロボットがサポートするデファ クトスタンダードは,“Robots Exclusion Standard” (RES)でMartijn Koster他によって1994年に書かれました.それは,ロボットに避けて欲しい URLパスを指示する命令を含むテキストファイルの書式を指定しています.ロボッ トが見つけるように,ロボットがダウンロードし解析するということを期待し て,その指定はサーバのルートの‘/robots.txt’に配置する必要がありま す.

Wgetは,厳密な意味ではウェブロボットではありませんが,個別のページをダ ウンロードするためにユーザが介入すること無く,サイトの大半をダウンロー ドすることが可能です.そのため,再帰的なダウンロード時にはWgetはRESに従 います.例えば,以下のようにします.

 
wget -r http://www.server.com/

www.server.com’の最初のインデクッスがダウンロードされます.Wget がそのサーバからダウンロードするより多くのドキュメントを見つけた場合, ‘http://www.server.com/robots.txt’を要求し,見つかった場合はそれ以 降のダウンロードでそれを使用します.‘robots.txt’はそれぞれのサーバ ごとに一回のみロードされます.

バージョン1.8までのWgetは,Martijn Kosterが1994年に書いた http://www.robotstxt.org/wc/norobots.htmlで利用可能な最初のバージョ ンの標準をサポートしていました.バージョン1.8では,Wgetはインターネット ドラフト‘<draft-koster-robots-00.txt>’の“A Method for Web Robots Control”と言うタイトルで指定された追加命令もサポートしています.私の知 る限りRFCにはなっていませんが,そのドラフトは http://www.robotstxt.org/wc/norobots-rfc.txtで利用可能です.

このマニュアルは,もはやRobot Exclusion Standardを含んでいません.

二番目に,メカニズムの知識はそれほどありませんが,個々のドキュメントの 著者をロボットでたどるファイルからリンクしたいかどうかを指定することも 可能です.これはMETAタグを以下のように使用します.

 
<meta name="robots" content="nofollow">

これは,http://www.robotstxt.org/wc/meta-user.htmlで幾分詳細に説 明されてます.Wgetは,通常の‘/robots.txt’への排他的な追加で,ロボッ ト除外のこの手法をサポートしています.

ロボットの拒否を本当に,本当に望むことがどうなるか知っている場合, ‘.wgetrc’のrobots変数を‘off’にして下さい.同じことは, 例えば‘wget -e robots=off url...’のように,-eスイッチ で達成可能です.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

9.2 セキュリティの考慮

Wgetを使用するとき,それが暗号化されていないパスワードをネットワークに 流すことを知っている必要があり,それはセキュリティの問題を提示するかも しれません.ここに主な問題と,いくつかの解決があります.

  1. コマンドラインのパスワードは,psの使用で見えるようになります.そ れを回避する最善策は,wget -i -を使用し,それぞれ分離された行に なっていてC-dで終端したものをWgetの標準入力にURLとして与える ことです.もう一つの回避方法はパスワードの保存に‘.netrc’を使用する ことです.しかし,暗号化されていないパスワードもセキュリティの危機と考 えられます.
  2. 安全でないbasic認証方式を使用すると,暗号化されていないパスワード がネットワークのルータとゲートウェイを通じて転送されます.
  3. FTPパスワードも暗号化されません.現在これに関しては良い解決方法が ありません.
  4. Wgetの“通常の”出力はパスワードを隠そうとしますが,デバッグログは,あ らゆる形式でそれらを表示します.この問題は,バグの報告を送るとき注意す ることで避けます(そう,それらを私に送るときもです).

[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

9.3 寄稿者

GNU WgetはHrvoje Niksic hniksic@xemacs.orgによって書かれました. しかしその開発は,バグレポート,特徴の提案,パッチや“Thanks!”と書かれ た感謝状など,多くの人々の助けが無ければ非常に遠いものとなっていたはず です.

以下の人々に特別な感謝を送ります(順不同).

以下の人々は,パッチ,バグ/ビルドレポート,役立つ提案,ベータテスト,ファ ンメールと管理者が喜ばしいと感じるあらゆることを提供してくれました.

Ian Abbott Tim Adam, Adrian Aichner, Martin Baehr, Dieter Baron, Roger Beeman, Dan Berger, T. Bharath, Christian Biere, Paul Bludov, Daniel Bodea, Mark Boyns, John Burden, Wanderlei Cavassin, Gilles Cedoc, Tim Charron, Noel Cragg, Kristijan Conkas, John Daily, Andreas Damm, Ahmon Dancy, Andrew Davison, Bertrand Demiddelaer, Andrew Deryabin, Ulrich Drepper, Marc Duponcheel, Damir Dzeko, Alan Eldridge, Hans-Andreas Engel, Aleksandar Erkalovic, Andy Eskilsson, Christian Fraenkel, David Fritz, Charles C. Fu, FUJISHIMA Satsuki, Masashi Fujita, Howard Gayle, Marcel Gerrits, Lemble Gregory, Hans Grobler, Mathieu Guillaume, Dan Harkless, Aaron Hawley, Herold Heiko, Jochen Hein, Karl Heuer, HIROSE Masaaki, Ulf Harnhammar, Gregor Hoffleit, Erik Magnus Hulthen, Richard Huveneers, Jonas Jensen, Larry Jones, Simon Josefsson, Mario Juric, Hack Kampbjorn, Const Kaplinsky, Goran Kezunovic, Igor Khristophorov, Robert Kleine, KOJIMA Haime, Fila Kolodny, Alexander Kourakos, Martin Kraemer, Sami Krank, Simos KSenitellis, Christian Lackas, Hrvoje Lacko, Daniel S. Lewart, Nicolas Lichtmeier, Dave Love, Alexander V. Lukyanov, Thomas Lussnig, Andre Majorel, Aurelien Marchand, Matthew J. Mellon, Jordan Mendelson, Lin Zhe Min, Jan Minar, Tim Mooney, Keith Moore, Adam D. Moss, Simon Munton, Charlie Negyesi, R. K. Owen, Leonid Petrov, Simone Piunno, Andrew Pollock, Steve Pothier, Jan Prikryl, Marin Purgar, Csaba Raduly, Keith Refson, Bill Richardson, Tyler Riddle, Tobias Ringstrom, Juan Jose Rodriguez, Maciej W. Rozycki, Edward J. Sabol, Heinz Salzmann, Robert Schmidt, Nicolas Schodet, Andreas Schwab, Chris Seawood, Dennis Smit, Toomas Soome, Tage Stabell-Kulo, Philip Stadermann, Daniel Stenberg, Sven Sternberger, Markus Strasser, John Summerfield, Szakacsits Szabolcs, Mike Thomas, Philipp Thomas, Mauro Tortonesi, Dave Turner, Gisle Vanem, Russell Vincent, Zeljko Vrba, Charles G Waldman, Douglas E. Wegscheid, YAMAZAKI Makoto, Jasmin Zainul, Bojan Zdrnja, Kristijan Zimmer.

記載忘れの方へ謝罪し,そしてWgetメーリングリストの全ての方に多いに感謝 します.


[ << ] [ >> ]           [冒頭] [目次] [見出し] [ ? ]

この文書は新堂 安孝によって2009年9月22日texi2html 1.82を用いて生成されました。