リンクチェッカー
ネットワークレスキューWeb裏技
  


☆ 使用上のご注意!
  • このシステムは、ネットワークレスキューWeb裏技 さん作成のプログラムを、当社が代行設置しているものです。
  • ご利用前に、以下の事項に必ず目をお通しください。

    1. ネットワークレスキューWeb裏技 プログラム利用規定(ソフトウェアライセンス規定)
    2. 当社は皆様の便宜のために代行設置していますが、スクリプトが当社サーバー上で仮に正常に動作しない場合でも一切の保証は行いません。
    3. スクリプトに動作不具合が発生し、その原因が仮に当社サーバーにあるとしても一切の保証は行いません。
    4. 当社は作者から提供されているスクリプトをそのままの状態で設置します。カスタマイズはお客様ご自身で行ってください。
    5. これらに同意できない場合、スクリプト一式(ホルダ毎)をサーバーから削除してくださいますようお願いいたします。 利用される場合には、これらに同意したものとみなします。
    6. スクリプト設置場所:
          http://貴方のドメイン名/cgi-bin/nph-check.cgi  (= /home/yourdomain/www/cgi-bin/nph-check.cgi)
      スクリプト起動html設置場所:
          http://貴方のドメイン名/cgi-bin/nph-check.cgi  (= /home/yourdomain/www/cgi-bin/nph-check.cgi)  


以下は、スクリプト使用方法について、作者の方のドキュメントを引用(抜粋)させていただいたものです。 正本はこちら


概要

- これはホームページの運営者が任意に実行するもので、みんなに使わせるようなものではありませんのでご注意ください。 サーバに負荷をかけないように注意しましょう。
- リンク集など、いわゆるリンク切れ(リンク先が無くなっている等)をページごと一度チェックするプログラムです。

- "LWP"というPerlモジュールが必要です。


サンプルとダウンロード

- サンプル
- ダウンロード 保存ファイル名:"nph-check.cgi"

- このシステムはフリーソフトですが、利用規定に従ってご利用ください。

 著 書 
CGIレスキューPerlプログラミング


設置と動作

  • "nph-check.txt" は "nph-check.cgi" に名前を変更してください。
  • パーミッションは 755 相当値に設定してください。
  • 直接このCGIプログラムを実行してください。
  • 記述されているリンクの有効性を調査したいページのアドレスを入力します。


余談ですが

ブラウザだけがWWWエージェントではありません。LWPは、Perlから直接HTTPプロトコル等を実行することができるようにするエージェントです。 これをシェル上から直接実行すると、このプログラムそのものがエージェントになり、"Mozilla"と同じように、 エージェント名を独自に付けることが出来ます。もしチェック先のアドレスにアクセス解析がついていれば、 このチェッカーからチェックに行った時に取得されるエージェント名(いわゆるブラウザ名)は、例えば

$ua->agent( "AgentName/0.1 (" . $ua->agent . ")" );

のように設定した名前が記録されることになります。ここで配布しているリンクチェッカーは、CGI経由で利用するので、 ブラウザから実行しますので、相手先にはご利用のブラウザのエージェント名が認識されるために、 プログラムにはこの設定はしていません。(設定しても対象にならない) もしやってみたい方は、 こちらを参考にして、 CGIプログラムではないPerlプログラムを直接シェル上から実行してみてください。

Google等の勝手にリンクをどんどん辿ってデータ収集するようなロボットをLWPを使って作ることが出来ます。 (GoogleがLWPを使っているかどうかは知りません)


"LWP"をインストールする方法

インストール方法を書いている、私が参考にしたサイトがあったのでこちらには書かなかったのですが、 どうもリンクが切れているようですので、当サイトにも記録を残しておこうと思います。 実はこの一式は、(株)電算システムの代行システム接続で、 自サーバでバーコードをリアルタイムに発行するために必要なものとしてインストールするものです。 その過程で、このLWPを使って出来るいろいろなことが分かったので、このページを用意した経緯があります。

  1. まず、http://www.linpro.no/lwp/をご覧ください。 ここにLWPをインストール方法が書かれています。英語サイトですが、もし分からなければ結構です。
  2. LWPをインストールするには、その前に必要なモジュールが幾つかあります。 これらのモジュールはインストールする順番がありますのでご注意ください。 というのは、一方のモジュールがないとインストールできないモジュールがあるためです。
  3. MIME::Base64 をダウンロードしてサーバに転送し、展開&インスールを行います。インストールにはroot権限が必要ですので、 共有サーバやレンタルサーバの場合は、サーバ管理者の作業が必要です。以下の手順のファイル名はこの時点のものです。 バージョンは変化していくものですので、置き換えてください。

    $ tar -zxvf MIME-Base64-2.12.tar.gz
    $ cd MIME-Base64-2.12 (展開したフォルダに移動)
    $ perl Makefile.PL
    $ make
    $ make test
    $ su (ルート権限に移行・最初からルート権限での作業でも可)
    # make install
    

  4. 次にURIをインストールします。 以下すべてMIME::Base64と手順は同じです。
  5. 次にHTML-Tagsetをインストールします。 これはLWPの説明サイトに書かれていなかったので、必要ないかもしれません。 というのは、次のHTML::Parserをインストールする際に、Tagsetがないためのエラーが出たために入れたものだからです。
  6. 次にHTML::Parserをインストールします。
  7. 次にDigest::MD5をインストールします。
  8. 次にNet::FTPをインストールします。
  9. 最後にlibwww-perl(LWP)をインストールします。
  10. 以上で、(株)電算システムの代行システム接続用のプログラムの実行が可能となり、 このリンクチェッカーも動くはずです。

参考文献 紙屋敷研究所


Copyright© rescue.ne.jp