Perlで書かれたCGIで別サーバのファイルを読みこむには?
yomi
[E-Mail]
1999/11/11(木) 00:33:23
はじめまして。
質問なのですが、Perlで書かれたCGIで別サーバのファイルを読みこむことはできるのでしょうか?
「できる!」という話も「できない!」という話も聞いたことがあるのですが・・・。
リンク切れチェックのCGIを作りたいので、
ご存知の方、よろしくお願いします。
J.Naka
1999/11/11(木) 00:42:26
インターネットのセキュリティ上は、「出来ない」が望まれる正解らしいです。
が、ソケットとかいう謎の技を駆使すれば、出来るらしいです。
ふじ
1999/11/11(木) 01:26:34
ありゃ、遅かった(^^;
B-Cus
1999/11/11(木) 03:26:21
> Perlで書かれたCGI
一つ言えるのは、タイムアウトのあるシステムの上で
何分で終わるかわからないことをやるってんだから、
根本的に CGI とソケットは相性が悪い。
どうしても CGI 上でやるなら、タイムアウト処理をちゃんと
やった方がいいよ、ってことでしょうか。
以下グチ。
> 1. LWPのモジュールが使えるならそれを使う。
これが一番簡単なんだけど、ふつーのプロバイダはモジュール
入れないですよねぇ。簡単だから教える方としても楽なんだけど、
教えても相手に環境がないから意味がない。
簡単なリンクチェッカ書いたら、それだけで
HTML-Parser-2.22/MD5-1.7/MIME-Base64-2.11/Net-1.0606/libwww-5.36
のモジュールが必要になってしまった。全部標準で perl に入れてくれ~。
\n
1999/11/12(金) 04:53:45
>>1. LWPのモジュールが使えるならそれを使う。
>これが一番簡単なんだけど、ふつーのプロバイダはモジュール
これを入手して、サーチパスにこれを置いたパスを追加するっての
はダメなんでしょうか?
#自分で試験すれば良いのだけれど、気力ないので知っていたら
#お願いします。m(_ _)m
B-Cus
1999/11/12(金) 05:35:47
確かに個人でインストールはできなくはありません。
telnet でリモートログイン
% tar zxvf MODULE-NAME.tar.gz
% cd MODULE-NAME
% perl Makefile.PL
% make
% make PREFIX=$HOME/modules install
として、スクリプトに
BEGIN {
use Config;
unshift(@INC,"/home/user/modules/lib/perl5/site_perl/$Config{apiversion}/$Config{archname}");
}
を挿入すればいいです (apiversion/archname でいいのかな?)。しかし
telnet 可能
Cコンパイラ使用可能
シェルの操作方法をある程度習得している
tarball (*.tar.gz) を扱える (tar の使い方を知っている)
コンパイル時の make/cc などのトラブルを突破できる
という条件をクリアする必要があり、それをネットワーク上で
手取り足取り教える気力は僕にはありません。
なので、ハードルは高く、教えても結局「無理でした」と言われる
可能性が高いので、これまでモジュールにはあまり触れませんでした。
# もっと簡単なインストール方法があれば知りたい。
翻って、自分が ISP の管理者ならどうか、と考えると、
「AとBとCを入れて」と言われればインストールするかも
しれないけど、「~が動くように必要なモジュールを入れて」
と言われたら拒否するでしょう。
しかし、動かす前にどんなモジュールが必要かどうかを知る
決定的な方法がないので (これも簡単な方法があれば教えて)、
「ISPの管理者にインストールを頼みなさい」と回答するのも
いまいちだなぁという感じです。
例えば上記のリンクチェッカ、
use HTTP::Status;
use HTTP::Response;
use LWP::UserAgent;
use URI::URL;
ですが、必要なモジュールは
HTML-Parser-2.22/MD5-1.7/MIME-Base64-2.11/Net-1.0606/libwww-5.36
です。
\n
1999/11/12(金) 20:11:33
>なので、ハードルは高く、教えても結局「無理でした」と言われる
>可能性が高いので、これまでモジュールにはあまり触れませんでした。
なるほど、確かにそのとおりですね。
#詳細な説明すいませんです。
他のモジュールに依存性の高いものは、環境に依存するし自己完結型
の物だとソースが大きくなり流用が利かなくなるし・・・
ちなみに、Jcode.pmを試してみましたが、この程度なら簡単ですが
他のものだと確かにちょっと面倒カモです。
結局、初心者にはふじさんの書かれた(3)が一番簡単かな
># もっと簡単なインストール方法があれば知りたい。
これに私も1票(^^;