トップページ⇒php
1001コメント344KB

CGI: Common Gateway Interface part 11

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん03/06/14 22:26ID:F9qlqHNx
CGIの運用に関する質問スレッドです。

※CGIは特定の言語に依存するものではありません。

Perlのコーディングに関する質問は、専用スレでお願いします:
[Perl 初心者コーナー Part24]
http://pc2.2ch.net/test/read.cgi/php/1054992610/

CGIとPerlの区別がわからない、という人はとりあえずこちらへ:
[WebProg 初心者の質問 Part3]
http://pc2.2ch.net/test/read.cgi/php/1045091733/

過去ログ・関連スレッドは >>2-5 あたりに
080979604/04/18 17:27ID:???
なんとかCOOKIEをつかってのsubmitしなおしで注文の引きつぎできるようになり2>3>2>3の
繰り返しもできるようになりましたが、もっともっと勉強が必要みたいです。
また来ます。
081080104/04/18 22:47ID:???
>>808

扱わざるを得ないとしたら、
この方法だと手詰まりですかね。。。(汗
0811nobodyさん04/04/19 00:22ID:dIBR14RC
LWPモジュールを使っていろいろと試して遊んでいます。
で、質問なのですが、
proxyを設定するために

use LWP::UserAgent;
$ua = LWP::UserAgent->new;
$ua->proxy(http => 'aaa.aaa.aaa:80');
$req = HTTP::Request->new('GET',"http://www.google.com");
$res = $ua->request($req);
print $res->content;

としたのですが、何も表示されません。
プロキシが生きていることは確認しました。
どうすればよいですか?
0812nobodyさん04/04/19 00:48ID:???
>>811
本当に何も表示されないんだったら俺の手にも負えないな

ちなみに俺のところでそのコードをそのまま実行したら
501 Protocol scheme 'aaa.aaa.aaa' is not supported
と表示されたよ
081381104/04/19 01:37ID:???
さっきは何も表示されなかったはずなのに、も一度やってみたら、
501 Protocol scheme ' ' is not supported
だそうで。
プロキシのアドレスにスキームhttp://を追加したらうまくいきました。
てかHTTP::Lite使った方がいいじゃん。
失礼しましたm_ _m
0814nobodyさん04/04/19 01:45ID:dIBR14RC
perlでのhttpアクセスにおいてリファラを任意に設定することは
できないのですか?少し前質問スレで無理って結論されていた
のですが、本当に無理なのですか?
身近なところでiriaなんかもリファラ設定できますよね?
あと、win32api使えばできたような・・・・
0815nobodyさん04/04/19 02:03ID:???
>>814
できます
0816nobodyさん04/04/19 07:23ID:???
>>814
プロキシかブラウザを作るしか。

(IEコンポーネントを利用した等の)ブラウザ作ればいくらでも可能。
CGIじゃないけど。
081781404/04/19 09:29ID:???
>>815さん、それはperlだけで可能ということですか?
具体的にどうすればよいのでしょうか?プロキシを作ればできるという意味ですか?
それともソケットをいじるだけでできるものなのですか?

>>816さん、できればperl単体でやりたいのですが、なんとかならんでしょうか・・・
0818nobodyさん04/04/19 10:45ID:???
ん?
Referer: ヘッダ付ければそれで済むことやん。
0819nobodyさん04/04/19 12:06ID:???
>>816
httpの仕様をよく勉強しましょうね
082081404/04/19 12:37ID:???
>>818
その通りでした--;
一連の流れでてっきりperlではリクエストヘッダいじれないものだとばかり・・・・
http://member.nifty.ne.jp/hippo2000/perltips/HTTP/Request.html
↑らへんを参考にやればちゃんとできました。
use LWP::UserAgent;
require HTTP::Headers;
$ua = LWP::UserAgent->new;
$h = new HTTP::Headers;
$h->user_agent('momomo');
$h->referer('http:://localhost.com/');
$req = HTTP::Request->new(GET,'http://www.taruo.net/e/?',$h); #確認用に診断くんへアクセス
$res = $ua->request($req);
でも一つ分からないことがありますので最後に質問させてください。
解説ではHTTP::Requestオブジェクトの生成時に指定する引数の3番目にHTTP::Headersオブジェクト
へのリファレンスを指定せよとあったのですが、\$hとしたらエラーになってしまいました。\をはずした
らうまくいきましたが、これって問題ないのですか?それとも僕の頭がおかしくて勘違いしてる?
0821nobodyさん04/04/19 12:57ID:???
>>820
おかしくはないけれども後者。リファレンスのリファレンスだからね(^・^)チュッ
082281404/04/19 13:18ID:???
>>821
$hはもともとリファレンスだったのですね。
よく分かりました。ありがとうございます。
・・・・・・ブチュ
082381404/04/19 14:53ID:???
何度もすみませぬ。
LWPを使ったアクセスを診断くんで確認したところHTTP_TEなる環境変数を
吐いているようで、んでもってHTTP_TEはプロキシ判定材料の一つなそうな。
もともとwebや掲示板等を巡回するようなツールを想定していたのですが、
こんなものを吐いていたら一部の厳格なプロキシはじきを通れません><
で、消してしまおうと思い。
$h->remove_header('te');
の一文を挿入したのですが、消えてくれません。書き方がまずいのかと思い、
teをHTTP_TEにしてみましたが変化なし、別の環境変数(referer等)はちゃんと
消せました。(user_agentは無理でしたが(そらそうか))
アドバイスお願いします。
082479604/04/19 15:31ID:???
「このページは他人に見られることのないように保護をされています。」

っていう通販HPの注文ページを見かけますが、私も自分のHPに保護をしたいページ
があるのでできるように勉強したいのですが、何について勉強すればいいのかわかりません。
今までhtml,javascript,perl等はいろんなホームページを回って勉強しましたので
今回もどこかのHPで勉強しようと思ってますが、どこかおすすめありませんか?
なにぶんどんな技術なのか言語がなんなのかさっぱりわかりませんので、どうゆう
キーワードで検索をかければいいかわかりません。どうぞよろしくお願いします。
0825nobodyさん04/04/19 15:49ID:uFMZjudZ
>>824
https ssl
0826nobodyさん04/04/19 15:52ID:???
>>823
俺も同じことやろうとして、消せなかったんでめんどくさいけどSocketモジュール使った。
消す方法があるのなら俺も知りたい。
0827nobodyさん04/04/19 16:59ID:???
>>823

$h = new HTTP::Headers;
sub HTTP::Headers::AUTOLOAD {
(shift->_header($1, @_))[0] if $HTTP::Headers::AUTOLOAD =~ /::([a-z_]\w+)$/;
}
$h->te('');
$h->chubou('教えてください');
$h->kami('俺にまかせろ');
$h->chosakuken('消すよ♪');

$ENV{'HTTP_TE'}をundefにしたければHeaders.pm書き換えないと無理っぽい
0828nobodyさん04/04/19 17:06ID:???
sub remove_header
{
 my($self, @fields) = @_;
 my $field;
 my @values;
 foreach $field (@fields) {
  $field =~ tr/_/-/ if $TRANSLATE_UNDERSCORE;
  my $v = delete $self->{lc $field};
  push(@values, ref($v) ? @$v : $v) if defined $v;
 }
 return @values;
}

だそうです。。。
082979604/04/19 18:32ID:???
>>825
ありがとうございます。
ところで例えばp1で住所等個人情報入力フォームがあり
p2で入力した内容の確認ができ、p3でそれを送信するといった場合に、
p1で入力された情報をp3まで引き継ぐ必要があるわけですが、どうやって
その入力データの引き継ぎをするのが理想的でしょうか?私が今できる事と言ったら
hiddenかcookieを使っての引継ぎくらいですが、セキュリティ的にどちらでするべきか
迷っています。どちらにしろSSLで保護はしますので安全だろうと思ってますが自信がもてないので
アドバイスお願いします。
cookieの場合ブラウザに個人情報がブラウザが閉じるまで?もしくは任意の時間残ってしまいますよね?
hiddenはソースを開けば見れる。←これは問題ないですよね?
083081604/04/19 19:23ID:???
>>814
質問スレの流れからrefererを偽装する話だと思ったら、
クライアントを作る話か。こんちくしょうって感じ。
以下、UserAgentバージョン2.024で動作したスクリプト。

use LWP::UserAgent;
push(@LWP::Protocol::http::EXTRA_SOCK_OPTS, ('SendTE' => 0));

my $ua = LWP::UserAgent->new(agent=>'My-crawler/1.0');

my $url = 'http://192.168.0.11/~test1/env.cgi';
my $referer = 'http://example.net';

my $response = $ua->get($url, referer=>$referer);
($response->is_success) or die 'response: ',
$response->code, ' ', $response->message;
print $response->content;
exit;

# httpが分かれば、直接IO::Socket::INETの方が便利。

>>819
もう一度rfc2616を読んでおくよ。
083181604/04/19 19:26ID:???
あ、urlを替えるの忘れてた。
適宜変更してね。
083281404/04/19 21:17ID:???
>>830
できました!本当にありがとうございました!もうちょっといじってからSocket
でもやってみようと思います(無理か・・・・w
refererの存在って例のITmediaの一件以来かどうかはしらないけどいまいち
存在意義がないような・・・出力をクライアントに依存するせいでいくらでも偽装
できるし、そもそも最近のセキュリティツールはreferer自体吐かないようになっ
てるのも多いし。refererを何かの判定に使おうとしたら結局ユーザビリティ低下
させるだけなのかな。
0833nobodyさん04/04/19 21:41ID:???
>>829
あのさぁ、この前紹介したページ見た?
というか、Webセキュリティについて何も知らないのが明らか
なんだから、こんなところで一つ一つ質問していないで、
一から勉強しなおせ。

今のまま個別の実装の仕方を覚えたところで穴だらけの
駄目通販サイトができるだけ。
まぁ、素人の作った通販サイトなんてそんなもんだが。
083479604/04/19 23:10ID:???
>>833もちろんありがたく見させてもらってます。htmlの勉強始めてから1ヶ月
くらいで、勉強自体はずっと進行形です。HPとかは一方的なのでわかったり
わからなかったりするので、ここで行き詰まった部分のアドバイスをもらうと
他のわからなかった部分も理解できたりするもので。2chってhow toのいい掲示板だなあ
と思ってましたが、あまりにも私の話はレベルが低すぎて迷惑ですかね。
レベル的に軽いスレ違いですね;私くらいの人間が行っても迷惑にならないスレって
ありますか?
0835nobodyさん04/04/20 15:07ID:???
>>834
ありません。まず日本語勉強してきてね。
0836nobodyさん04/04/20 17:31ID:???
>>834
趣味でやってるようなものならともかく、通販みたいに商売でやるものを
素人がわからないで手を出すなよ。
金を払って作ってもらったものを参考にとか、仕組みを完全に理解するまで
勉強してからやれよ。
0837nobodyさん04/04/20 17:42ID:???
サイトやスクリプトの「素人っぽさ」って、案外簡単に感づかれるよ。
「絶対に誰にも何も聞かずに自分ですべて調べて1からシステムを構築できる」レベルになるまで
そういうのには手を出さないほうがいい。
0838nobodyさん04/04/20 20:19ID:???
>>837
素人っぽさってどう言う所で判断してる?
俺の場合、何がどうと言う事ではなくエディタで開いて3秒くらいで
ゴミ箱行きかどうか決めてるけど。
0839nobodyさん04/04/20 23:11ID:???
use strictだろ。 Perlなら。
0840nobodyさん04/04/21 00:43ID:???
確かにモジュール関係の記述は目安になるな
0841nobodyさん04/04/21 23:43ID:???
>>829
そういう重要な情報はサーバーサイド(通常はDB)に保存し、
Cookieやhiddenにはそれにアクセスするためのキー情報のみを
セットする。そういうのを一般的にセッション管理という。
総当り方式等でセッションをハイジャックされないような仕掛けも必要。
迂闊に手を出さない方が良いと思う。
084279604/04/22 10:47ID:???
おはようございます。完全に勉強してからつくるではなくて、勉強しながらつくって
完全に理解できたときに完成と認めてスタートさせようと思ってます。とりあえず
CGI部分の機能はできた?ので、今はちょっとデザイン部分をやってます。
>>829ありがとうございます。凄い参考になります。その路線をがんばって勉強します。
本当ありがとうございます。
0843nobodyさん04/04/22 11:03ID:???
>>842
もう来るな
0844nobodyさん04/04/22 13:24ID:???
>>843
真面目に勉強したなら、もう来る必要がなくなくなるからご安心を(w
0845nobodyさん04/04/23 14:57ID:???
自作モジュール使ったCGIを配布、もしくは設置したけど
モジュールのソースを公開したくない時ってどうしてます?
(モジュールファイルをアップしたくない)

自分管理のサーバ内にモジュールを置いておいて、
外部サーバからLWPでGETさせてevalで利用ってのを考えてみたけど…。
でもそれってCGIソースからモジュールのURL知られてDLされたらおしまいか。
使い勝手も悪そうだし、毎回負荷がかかっちゃうのも問題かー。うーむ。
0846nobodyさん04/04/23 15:03ID:???
>>845
誰も見ないから安心して公開してください。
084784504/04/23 15:09ID:???
>>846
それ言われるとお終い。
0848nobodyさん04/04/23 15:51ID:???
なんか「ホームページのソースを見せたくない」に似てるな。
0849nobodyさん04/04/23 17:01ID:???
そんなに恥ずかしいソースを書いてるのか
0850nobodyさん04/04/23 17:25ID:???
perl の場合なら

1. perlcc でコンパイルして配布する
2. perlapp でバイナリ化して配布する

どっちにしてもポータビリティは無くなるが
0851nobodyさん04/04/24 15:57ID:RLkwArNt
質問があります。

ttp://i-meishi.jp/design/flower.html

ここのように一つデザインを選んだら、次の注文フォームで
自動的にデザイン番号が入力されるようにするにはどうすれ
ばいいのですか?
フツーのフォームメールCGIでできますか?
よろしくお願いします。
0852nobodyさん04/04/24 16:44ID:???
値を渡せ。さすれば道は開けるであろう。
085385104/04/24 16:52ID:???
>>852

値を渡すとは

****.cgi?****=****

みたいなヤツですよね?
もう少し具体的に教えていただけないでしょうか?
厨ですみません・・・
0854サバティさん04/04/24 21:19ID:???
>>845
RPC でぐぐっちょみ☆
0855nobodyさん04/04/24 23:13ID:???
>>853
わからないなら無理だからあきらめな
085685104/04/25 07:05ID:+y7H56mQ
>>855
どうも違うみたいですね。
ページから別ページのフォームの特定テキストボックスに値を渡すにはどうすればいいのでしょうか?
解説しているページなどあれば教えていただけるとうれしいです。
0857nobodyさん04/04/25 07:59ID:???
>856
受け取った方のCGI(のフォーム)でそのvalueをセットしておく?
085885104/04/25 09:28ID:???
>>857
そうすると商品(デザイン)の数だけフォームを用意しないといけませんよね?
なんかスマートでないというか・・・
0859nobodyさん04/04/25 09:47ID:???
>>851=858
ど素人は一つ一つ聞かないで、一から勉強しれ。
藻前が必要としていることが書いてあるCGIの本なんて2000円もしない。
Web上にもいくらでも資料がある。

>>1をよく読んでからどっか行け。
0860nobodyさん04/04/25 13:00ID:???
>>859
まあまあ、それでなくても過疎板なんだからお客さんは大事にしないと…

>>858
基本中の基本だからCGIの勉強をしてれば自ずとわかるようになる。
2ちゃんで安易に回答を得ることは、自分の成長の芽を摘む事とさも似たり。
精進したまえ。
0861nobodyさん04/04/25 13:19ID:???
>>851
似たようなCGIを探している人がいたから、こっちで一緒に探したら?

【CGI】こんなCGI探してますver.13
http://pc5.2ch.net/test/read.cgi/hp/1081608108/156
086285104/04/25 18:15ID:YwE1vg2P
>>861
それ私です。(^_^;
誰も心当たりがないみたいで・・・
0863nobodyさん04/05/01 12:39ID:???
携帯3キャリア対応のCGIを作ろうと思ってるんですが、
モバイル対応CGI作成における情報・TIPSが
載ってるサイトを知ってる人いますかね??

書籍類も無いみたいだし…
0864nobodyさん04/05/01 12:42ID:???
いろんなサイトにちょっとずつ情報が散らばってるから、
それを自分で調査、収集、整理して利用すべし。
0865nobodyさん04/05/01 14:41ID:???
http://www.au.kddi.com/ezfactory/
http://www.dp.j-phone.com/dp/
http://www.nttdocomo.co.jp/p_s/imode/make/
0866nobodyさん04/05/02 22:56ID:VyPHEPB5
特定のディレクトリだけ公開したいんだけど
ディレクトリ内のファイルをリスト化してリンク貼ってくれるような
スクリプトありませんか?
0867nobodyさん04/05/02 23:11ID:???
mod_autoindex

<Direcrory "/path/to/hoge">
Options Index
</Directory>
0868nobodyさん04/05/03 02:56ID:rRSmxfOR
質問。
CGIで数枚の画像を重ねて、それを一枚の画像に結合することは可能でしょうか。
CSSで画像を重ねることはできました。
アバターの様にいくつか画像を選んでそれを一枚の画像にして表示させたいんです。
ぐぐったり、ヤホージャパンアバターのhtmlソースを確認したところ、外部で処理してるようなのです。
CGI、java、PHP、、、etc、どれを使用して処理しているか解かりませんが・・・(汗
0869nobodyさん04/05/03 03:51ID:???
>>868
一番簡単なのはFLASHで作る方法。
0870nobodyさん04/05/03 04:34ID:???
まあ ImageMagick が定石だろうな
087186304/05/03 11:59ID:???
>>864,865

情報ありがとう。
公式ページはチェックしてるけど、
CGI開発における情報ってあんまりだったので。。
地道にグぐるしかないかもね。
thx
0872nobodyさん04/05/03 12:30ID:???
そもそも CGI とは関係ない罠。
0873nobodyさん04/05/08 15:00ID:vSbIGN9w
@files = glob("./*.*");
foreach $key (@files) { print "<a href=\"$key\">$key</a><br>\n";}

動かしてる鯖は
WinXP Pro/Apache2/ActivePerl/ZoneAlarm

こんな感じでディレクトリ内にあるファイルを
リスト化してリンクしてくれるモノを作ってみたんだが
実際にそのリンクをクリックするとファイルがサイト内にないというような
警告がでてなにもできない
このスクリプトのどこか間違ってますかね?
0874nobodyさん04/05/08 15:33ID:???
>>873
スレ違い
0875nobodyさん04/05/10 16:02ID:aYuK5bou
CGIで画像を出力したいのですが、i-mode(P505i)では下記の記述で
出力されるんですが、どうもAUとvodafoneでは表示されないようです。
下はJPEG画像の出力ソースです。なぜなんでしょうか?


open(IN,"ファイル名") || &Error("エラー:ファイル名");

print "Content-type: image/jpg\n\n";

print while (<IN>);
close IN;

すみませんがよろしくお願いします。
0876nobodyさん04/05/10 16:19ID:???
>>875
image/jpegじゃないの
087787504/05/10 16:22ID:aYuK5bou
image/jpgではだめなのですか?
すみません、無知なもので・・・
ドコモはimage/jpgでも表示できるんですが、
image/jpegにしたほうが良いようですね。
ありがとうございました。さっそく直してみます。
0878nobodyさん04/05/11 06:06ID:???
拡張子とMIMEタイプは違う。
image/jpg なんていうMIMEタイプは登録されていない。
http://www.iana.org/assignments/media-types/image/
0879nobodyさん04/05/11 06:20ID:???
だね。
Content-type: text/txt\n\n;
なんて書かないのと同じ。
0880nobodyさん04/05/11 10:54ID:???
たのむから仕事でコード書くときは
CGI、CGI::Sessionなどのモジュールを利用してください。
0881nobodyさん04/05/11 19:06ID:iWNmrZA1
CGIからMHTを出力したいのですが、うまくいきません。
IEではテキストがそのまま表示されてしまいます。
名前をつけて保存すると、開けるようになるので、
バイナリは一致しているはずなのですが。

MHTのMIMEタイプを調べて、
Content-type: message/rfc822\n\n
を出力しているのですが、これではIEが解釈してくれないのでしょうか。
0882nobodyさん04/05/11 19:48ID:Ax2GxUUe
抽選cgiを作りたいんです。
内容として一日一回 当選を出す
日付が変わるとリセットされる
プログラム作って頂けませんか
0883nobodyさん04/05/11 19:55ID:???
>>882
ま、すれちがいなわけなんだが…
0884nobodyさん04/05/11 19:56ID:???
ま、金くれるんならやってもいいぞ。
088588204/05/11 20:15ID:Ax2GxUUe
スレ違いすいません。
0886nobodyさん04/05/15 19:58ID:AknjjuaO
質問というか相談です。
cgi習得のため日記を書き込む&表示するcgiをPerlで作っているのですが、
ログの整理方法で悩んでいます。

全日記データ(1件1kb程度?)を単一ファイルにすれば、データ壊れた時恐いなあ、とか
逆に1日分を1ファイルにしたらクラスタとかの関係でめちゃくちゃHDD圧迫するんじゃないか・・・
などと迷っております。

現在はdiarylog/200405.datとして1月1ファイルあたりにしようかなと考えておりますが
何らかの危険回避のために意識した方がよいもの、
後々便利になるものなどがありましたらご教授いただけませんか。
主観込み込みで構いませんので後押しをお願いします。
0887nobodyさん04/05/15 20:07ID:???
>>886
バックアップすればイイのこと。
データを書き込む前にログファイルをどっかにコピーするとか、sendmailで自分宛に送るとか。
0888nobodyさん04/05/15 20:10ID:???
つけたし。
レン鯖だとすると全データ飛ばしは有り得る話なので、バックアップは自動だろうが手動だろうが必ずしておくべきことだ。
自分のデータは自分で守ろう。
0889nobodyさん04/05/15 20:37ID:???
>>886
ログにDBM使うのはどうかな?
ハッシュで比較的高速にアクセスできるから1ファイル構成でも、
最近と過去とで2ファイル構成でも悪くない。

バックアップはもちろん必要だけど。
0890nobodyさん04/05/15 20:42ID:???
>>889
勉強中の初心者に何を勧めてんのよw
0891nobodyさん04/05/15 20:57ID:???
>>889
唐突でワラタ
0892nobodyさん04/05/15 21:05ID:???
>>886
他人に自作スクリプトを評価してもらうのが効率のよい習得方法だな。
自分が「これはいい」と思ってた部分が実は糞みそだったりするからな。

ほれ
自作CGIを評価するスレ
http://pc5.2ch.net/test/read.cgi/php/1049514428/l50
089388604/05/15 22:52ID:AknjjuaO
みなさまアドバイスありがとうございます!

バックアップ(コピー)をとれば単一ファイルにでき手軽そうですね。

そこで新たに疑問が。
2004年5月15日の日記を読むにはファイル全て読むことになりますよね。
その前日もついでに読むと再びファイル全て読みに行くことになると思いますが、
不要な部分も読むというロスは気にしたほうが良いのでしょうか?
また、みなさんなら何kbくらいのロスからログ形式(もしくは読み取り方法?)の変更を考えますか?

もう一つ似たようなことで、
読み取り専用で開く場合もファイルロック(やバックアップ)をしたほうがいいのでしょうか?
書き込む人は管理者の1人を想定しており、処理に多少時間が掛かっても構わないのですが、
読む場合は[翌日の日記へ>>]ボタンを2秒1回くらいでぽちぽち押しても耐えられるものを作りたいのです。

---
DBMというのはググってもよく理解できず
まだ敷居は高そうですが一応心に留めておきます。

まだファイル読み書き部分も作っていませんが、
日記として機能できたら評価スレに行ってみますね。
0894nobodyさん04/05/16 12:50ID:???
CGI初心者です。
あるCGIから別のCGIにPOSTするにはどうしたらよいですか?
また、その際に送信側でパラメータのセット、
受信側で取得する方法も教えてください。
どなたかお知恵を。
0895nobodyさん04/05/16 12:51ID:???
↑ちなみにPerlのバージョンが古いので
CGI.pmモジュールは使えません。
0896nobodyさん04/05/16 12:56ID:???
>>894
http://x68000.startshop.co.jp/~68user/net/
http://www.studyinghttp.net/
0897nobodyさん04/05/16 13:07ID:???
>>896
ありがとうございます。
しかし、残念ながらここのサンプルは
モジュールを使っているようです。
cgi-lib.plを使って同じことはできないのでしょうか?
0898nobodyさん04/05/16 13:41ID:???
>>897
サンプルを丸写ししろという意味でなく、そういったサイトで HTTP や
CGI の基本を勉強しろという意味なんだがな。それがいやなら
サンプルが動く環境を整えるか、金払って作ってもらえ。
0899nobodyさん04/05/16 14:04ID:???
裏を返せばSocket使えない環境しか与えられてない、というのは
使うのを薦められない何らかの理由があると考えていいんじゃね?
0900nobodyさん04/05/16 15:55ID:???
CGI.pm使ってPOSTする方法を教えてください。
0901nobodyさん04/05/16 16:28ID:???
>>900
CGI.pmはCGIアプリのためのモジュールだから用途が違う。(POSTをするじゃなくてPOSTを受ける方)

自分からPOSTするにはLWP系のモジュールが便利。
ttp://search.cpan.org/~gaas/libwww-perl/
0902nobodyさん04/05/16 16:46ID:???
>>901
ありがとうございます!
090388604/05/17 09:01ID:bRPhhdmX
日記cgiがどうのと質問した>886(=>893)です。

「(CGI-Perl)読み取り専用で開く場合ファイルロックは必要か」
という疑問は、検索の仕方が悪いのか解説されたページが見付かりません。

ファイルが壊れるというのは物理的な干渉でなく、
時間差の引き起こす上書きだという認識なので読み取り専用の場合は気にする必要が無いと思うのです。
この考えは間違っていますか?

スレや板を間違ってる気ならしてきました。
0904nobodyさん04/05/17 09:41ID:???
>>903
http://pc5.2ch.net/test/read.cgi/php/1081148490/694-695
090588604/05/17 10:06ID:???
>>904
共有ロックと排他ロックですか。
分かりやすそうなページがたくさんヒットしました。
今日中に解決できそうです。
http://pc5.2ch.net/test/read.cgi/php/1024795138/
google経由でこんなスレも見つけたので今日帰ってからでも読んでみます。
ありがとうございました!
0906nobodyさん04/05/17 15:28ID:???
>>905
Data::Dunper 結構便利だよね。
DBM紹介して、初心者に紹介するもんじゃねえって言われてた人いたけど、
ま、これも似たようなもんかもしれんけど、
DB使うほどもんでなし、かといってフラットファイルだとかったるいってのは

$database = do "$log_file" or die "$log_file: $!\n";
とかやって取り込み、
print LOG Dumper($database );
とかやってる。

結構お手軽。
090788604/05/17 17:39ID:???
>>906
色々調べてみました。Data::Dumperのようですね。
便利そうなのですがファイル構造はせいぜい2次元ですし、
1行1レコード、先頭の日付8桁の数字をキーくらいにしか考えておらず
このスクリプトではDumperのお世話になるほどでは無いかなと感じました。
情報ありがとうございます。
0908nobodyさん04/05/19 17:04ID:???
>>907
> ファイル構造はせいぜい2次元

ふーん、そうなの?
レス数が900を超えています。1000を超えると表示できなくなるよ。