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

●他のサーバにある画像ファイルをCGIで読み取る方法

発言者:mens
( Date Tuesday, December 16, 1997 16:09:07 )


他のサーバにある情報(例えばhttp://www.xxx.or.jp/~xxx/test.gif)
を、別のサーバ内のCGIから読み取る方
法を教えてください

ロボットなどは、ソレをおこなっているの
だと思いますが、方法がわかりません

稲垣@信州 さんからのコメント
( Tuesday, December 16, 1997 18:09:34 )

 さて、画像を読み取ってどうするかに因りますが、単純にページにインラ
インで表示するのであれば、htmlページを構成する際にフルURLを埋め込めば
表示が出来ます。

 多分、そうでは無いと思いますので、httpをcgiに喋らせてデータを転送し
て、画像データのファイルとして再構成すればいいと思います。
 簡単なブラウザと同じことをする必要が有るはずです。

 この辺は、詳しいか多のフォローをお願いします。

 根本的な解決になっていなくてすみません。


田中求之 さんからのコメント
( Tuesday, December 16, 1997 23:45:15 )

アクセスした人に見せたいのであれば、稲垣さんからのコメントのようにページに
SRC タグで埋め込んでおくだけですが、データそのものをサーバーに取り込みたい
ということでしたら、http プロトコルで相手のサーバーにアクセスしてデータを
ダウンロードするプログラムを走らせる必要があります。

リストにしておいた URL のデータを順番にダウンロードするスクリプトは、以前に
この会議室で紹介したことがありますので、NetEvents でサーチしてもらえば
引っ掛かると思います。

もちろん、CGI の中から動かすことも(ご自分で改造すれば)可能ですが、
タイムアウトにならずにデートを取りこめるかどうかは、アクセス先やネット
の状況次第ですね。

mens さんからのコメント
( Wednesday, December 17, 1997 02:48:03 )

稲垣さん、田中さん

RES大変ありがとうございます。

説明不足で申し訳ありません。
そうなんです。URLで指定されたたとえばGIFファイルを、perlなどのCGIから
ダウンロードして、処理をしたい(加工や格納などいろいろ)のです。
田中さんからご教授いただいた、NetEventがそのようなふるまいをするように
も思えました。まだよく把握していませんが、これは、MAC用のサーバプログラム
か何かでしょうか?いかんせん、私はWINユーザで、UNIXのサーバ上で、
CGIにてこの処理を行いたいのですが、NetEventで可能でしょうか?
マック用ファイルらしきものであったため、それ以上理解することができませんでした。
よろしくご教授お願いいたします

議長ニセ さんからのコメント
( Wednesday, December 17, 1997 06:47:19 )

単純にソケット通信で、目的のサーバーにあるデータを読んでしまえば良いのでは無いでしょうか?

私はダイヤルアップ接続ですが、プロバイダがTELNETサポートしているので、
家のシェル環境にロボットみたいのを起動させてブラウザを使わず直接データの様子を見てます。
機械はmensさんと同じくWINに、BSD ON WINDOWSというunixシェル環境を
走らせて行っています。

スクリプトはperlでもCでも、好きなもので組めば良いです。

mens さんからのコメント
( Wednesday, December 17, 1997 09:16:49 )

議長ニセ さん RESありがとうございました

ソケット通信ですか!
つまりCGIからでも、内部で同処理は出来るという
事にもなりますね。
このコーディングって、結構たいへんなもにになるの
でしょうか?
perlって奥が深いなぁ〜。