X



CGI: Common Gateway Interface part 13
0001名無しさん@そうだ選挙に行こう
垢版 |
2005/09/11(日) 19:59:21ID:2LNvgPc/
CGIの運用に関する質問スレッドです。

※ CGIはウェブサーバ上でユーザプログラムを動作させるための仕組みであり、
Perl等特定の言語に依存するものではありません。


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

CGIとPerlの区別がわからない、という人はとりあえずこちらへ:
△▲ WebProg 初心者の質問 Part12 ▼▽
http://pc8.2ch.net/test/read.cgi/php/1125215604/


過去ログ・関連スレッドは>>2-10あたりに
0033nobodyさん
垢版 |
2005/12/05(月) 09:04:02ID:???
よく、「当サイトを訪問されているは、現在28名です」というサイトを見るのですが、
これはどのようにして人数を数えているのでしょうか?
0034nobodyさん
垢版 |
2005/12/05(月) 16:01:39ID:???
>>33
適当に計算してるだけ
過去1分間のアクセス数とか
0036nobodyさん
垢版 |
2005/12/05(月) 22:17:07ID:???
>>31
参加して、sendmailでスパム送る方法を教えてもらってきてくれ。
0037nobodyさん
垢版 |
2005/12/09(金) 20:39:27ID:???
perl oopで作成するCGIスクリプトの特長ってなんですか?
0039nobodyさん
垢版 |
2005/12/10(土) 04:37:59ID:???
CPANモジュールがうれしい
0040nobodyさん
垢版 |
2005/12/11(日) 15:18:58ID:F46/mD0+
過疎化対策のため不定期アゲ
0041nobodyさん
垢版 |
NGNG
perl oop でも、巧く構築すればかなりスリムで無駄のないものになるからいいよね
0042nobodyさん
垢版 |
2005/12/11(日) 17:04:24ID:???
oopってムダが多いんじゃないの?
0044nobodyさん
垢版 |
2005/12/12(月) 17:38:38ID:iLHJxm44
過疎化対策のため不定期アゲ
0045nobodyさん
垢版 |
2005/12/17(土) 11:46:02ID:aQYTgoiy
過疎化対策のため不定期アゲ
0047nobodyさん
垢版 |
2005/12/18(日) 18:45:18ID:PQx1D5jp
シュールなスレだ
0048nobodyさん
垢版 |
2005/12/18(日) 19:12:33ID:???
>>3が関連スレの一覧じゃなくて誘導先になってるなw
0049nobodyさん
垢版 |
2005/12/29(木) 17:37:57ID:f2XFsPIz
過疎化対策のため不定期アゲ
0050nobodyさん
垢版 |
2005/12/31(土) 13:34:49ID:uyy7Q54x
すんません。質問なんですが。

perlでau機に304 Not Modifiedを出力したいんですが、ブラウザがどうにも500エラーとかのたまいます。

出力している内容は、

Content-Type: text/html
Status: 304 Not Modified
(空行)

です。んで、FireFoxだと理解してキャッシュを表示してくれるのに、au機は500エラーというのです…もうわけわかめ。
間違っているんでしょうか?どういうヘッダーを吐き出せばいいんでしょうか…
0051nobodyさん
垢版 |
2006/01/01(日) 11:48:39ID:CiiuuKX6
>>50
Openwaveの場合、同じURLをアクセスするとデフォルトでローカルキャッシュを読みにいくため
304 Not Modifiedの制御は意味を持たないのではないかと思う。

というか携帯のテストをFirefoxでやるというのが意味不明。普通はシミュレーターか実機を使ってやるだろ。
005350
垢版 |
2006/01/03(火) 04:38:20ID:???
>>51
ありがとうございます。解決しました。

最後に空行を出すには\n\nを出さないといけなかったらすぃ…\n\nだと2行空行が入ると思ってたよorz

キャッシュに関しては、Cache-Control: no-cacheを吐いてるんで、OPENWAVEでもきっちり見に来てくれます。

FFでStatus: 304が正常に働いたのは、FFが良心的に解釈してくれたからの模様…
0054nobodyさん
垢版 |
2006/01/05(木) 04:38:17ID:/F4YUTMx
perlで、サイト内検索スクリプトでand/or検索のプログラムを書きたいんですが
解説などのオススメのサイトとか知っている方いませんか?
0056nobodyさん
垢版 |
2006/01/14(土) 07:47:02ID:Z85aSSAS
CGIの運用に関する質問スレッドです。
スレタイが紛らわしくてすんまそん。
>1を怨んでくり
0057nobodyさん
垢版 |
2006/01/30(月) 02:09:07ID:wr+6kz7T
このスレの>>1
自分が見やすいと思って書き直したコードが、
誰も読めないスパゲティにしてしまうタイプと見た。
0058nobodyさん
垢版 |
2006/01/30(月) 02:10:03ID:???
×コードが
○コードを
0059nobodyさん
垢版 |
2006/01/30(月) 08:03:06ID:???
何事にも来歴や理由がある
視力だけではコードは読めないよ
0060nobodyさん
垢版 |
2006/01/30(月) 12:48:11ID:???
part10から12の流れを知ってる奴はどれぐらい居るのやら。
0061nobodyさん
垢版 |
2006/01/31(火) 15:21:07ID:???
知って欲しければテンプレに書いとけ
0062nobodyさん
垢版 |
2006/02/02(木) 10:19:43ID:umbqoMFS
Perl (mod_perl)
Perl (mod_perlなし)
PHP (mod_php)
C++

どれが一番CGIとして高速に動作しますか?
0063nobodyさん
垢版 |
2006/02/02(木) 10:39:46ID:???
mod_perlやmod_phpはもはやCGIではないのだが。

C++ (Apache モジュール)>C++(FastCGI)>>Perl (mod_perl)>PHP (mod_php)>>>>C++(CGI)>>Perl (CGI)
0064nobodyさん
垢版 |
2006/02/02(木) 11:08:58ID:???
C++ (Apache モジュール)とはmod_cgidsoモジュールですか?
workerでも動作するようで、使用してみたいですね
0065nobodyさん
垢版 |
2006/02/07(火) 13:24:45ID:jgUTwxiI
あげ
0066nobodyさん
垢版 |
2006/02/11(土) 08:47:54ID:Cuk8YMSc
CGIの運用に関する質問スレッドです。
0067nobodyさん
垢版 |
2006/02/11(土) 09:38:09ID:???
>>63
Perl (mod_perl)>PHP (mod_php)

↑根拠ナシ夫ちゃん
0068nobodyさん
垢版 |
2006/02/12(日) 14:49:17ID:???
>>67
そんな恥ずかしいことを書けるあなたに感動した!
0069nobodyさん
垢版 |
2006/02/16(木) 11:47:01ID:SrqmQmLd
CGIの運用に関する質問スレッドです。
0070nobodyさん
垢版 |
2006/02/17(金) 18:26:23ID:dYHj+Yrx
スレタイ激しく元に戻したい。
改悪した香具師出て来い!
0071nobodyさん
垢版 |
2006/02/20(月) 03:54:43ID:???
Perlのアホな質問が出てくるよりはマシだよ
0072nobodyさん
垢版 |
2006/02/22(水) 19:10:42ID:???
CGIってウェブアプリケーションサーバって言って良い?
0074nobodyさん
垢版 |
2006/02/26(日) 09:18:17ID:gXeWmYjr
あげ
0075nobodyさん
垢版 |
2006/03/02(木) 00:11:58ID:CihQioaf
FastCGI,SpeedyCGI,mod_perlの使用を検討しています。
Apacheに組み込もうと思っているのですが、どれが一番高速に動作するのでしょうか?(@Perl)
0076nobodyさん
垢版 |
2006/03/02(木) 06:56:09ID:???
アクセス数やコンテンツの種類にもよるでしょ
0077http:// p6113-ipad501osakakita.osaka.ocn.ne.jp.2ch.net/
垢版 |
2006/03/02(木) 17:00:46ID:???
guest guest
0078nobodyさん
垢版 |
2006/03/10(金) 04:14:08ID:GKIOQBdP
ぬるぽ
0079nobodyさん
垢版 |
2006/03/12(日) 03:23:04ID:???
   ∧_∧ 
   ( ・∀・)   
 (( ( ヽ ノ )  
   ノ\(○´  ゴッ
  (_ノ(_\   ∧
     = ()二) <  >_∧∩
            V`Д´)/ ←>>78
                 /
0080nobodyさん
垢版 |
2006/03/13(月) 03:07:41ID:???
まずルパンのタイトルフラッシュのような、
簡単な「文字入力→フォーム送信→受け取って出力」の流れを作れるようになることを目標に、
『基礎から学ぶCGIプログラミング』って本を買った

サッパリわからん
っていうか、書いてない
「perlでのプログラミングを経験したことがある人を対象にしています」ってそこが基礎じゃねぇのかよ

まず動作確認が動作しないんだよ
基礎以前の基礎はどこで実につけりゃいいんだよ
ローカルでCGI動かす方法書いてくれよ
Hello worldから説明してくれよ
オウム社ってなんだよくそ 挫折するぞ
0081nobodyさん
垢版 |
2006/03/13(月) 04:21:38ID:???
1ページくらい見てから買おうよ(´・ω・`)

いい本探してるなら>>3の書籍スレで聞いてみるとか。
0082nobodyさん
垢版 |
2006/03/13(月) 08:21:53ID:???
いやあ
40ページに書いてあるんだ

基礎以前の基礎って、他の「初心者のための」的な本には書いてあるんかなぁ
「この本よかったよー」って言ってる人が、元々どの程度の知識の持ち主かわからないし
まあこれは本屋行けって話ですよね

平然とCGIの話をするキミタチはすごい。うらやましい
一体何からどうやって始めたんだろう
まあすぐ追いつきますがね
0083nobodyさん
垢版 |
2006/03/13(月) 08:47:42ID:???
今日覚えたこと・・・コマンドプロンプトは「cmd」で出す (´υ`)
この壁は高かった。HelloWorldできたわー
ただ どうやってブラウザで見るんだ?これ・・・

さあ、あんまりこんな低レベルな話されても迷惑だよな
独り言もこのあたりにしとくわ
0084nobodyさん
垢版 |
2006/03/16(木) 11:41:12ID:sDRJRhCs
気が遠くなりそうな埋め
0085nobodyさん
垢版 |
2006/03/19(日) 23:23:56ID:???
超簡単な掲示板できたわ〜
日々成長しとるわ〜
あんな本いらんかった
0087nobodyさん
垢版 |
2006/03/25(土) 12:06:09ID:djy+SDmt
CGIって…















ぬるぽ?
0088nobodyさん
垢版 |
2006/03/29(水) 21:54:36ID:???
── =≡∧_∧ =!!
── =≡( ・∀・)  ≡    ガッ     ∧_∧
─ =≡○_   ⊂)_=_  \ 从/-=≡ r(    )
── =≡ >   __ ノ ))<   >  -= 〉#  つ
─ =≡  ( / ≡    /VV\-=≡⊂ 、>>87
── .=≡( ノ =≡           -=  し'
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
                  |
                  |
                  | 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
                  |       東 京 湾
0089nobodyさん
垢版 |
2006/04/03(月) 15:42:34ID:AGlnlQIC
新年度あげ
0090nobodyさん
垢版 |
2006/04/06(木) 04:46:01ID:mBEtRj1V
は〜
まだ90か〜
0091nobodyさん
垢版 |
2006/04/12(水) 10:52:42ID:YLNYCC1x
↓の人ボケて
0092nobodyさん
垢版 |
2006/04/24(月) 11:08:37ID:???
スレタイ改悪した香具師出てこい
0093nobodyさん
垢版 |
2006/05/05(金) 18:12:31ID:2ybRB6BX
GWage
0094nobodyさん
垢版 |
2006/05/10(水) 09:42:13ID:wL7/1KsY
(゚д゚)<シメジ
0095nobodyさん
垢版 |
2006/05/18(木) 22:34:58ID:???
他のスレから来ました。
Perlで他のサイトを取得して表示したいと思っています。
(著作権侵害とかそういうことをしたいのではないです)

お時間のある方にお願いしますが、次のコードで@niftyのトップページを取得してみたら
どうなるか教えていただけませんでしょうか?

print "Content-Type: text/html\n";
print "\n";
use LWP::Simple;
print get( 'http://www.nifty.com/' );

私のところだと、ブラウザ上での表示がぐちゃぐちゃになるんですが…。
0096nobodyさん
垢版 |
2006/05/19(金) 11:46:32ID:eK6CUNW8
>>95
403エラーがでます
0097nobodyさん
垢版 |
2006/05/31(水) 19:45:21ID:qTr6Ebfx
誘導していただいたのでこちらにて質問させてください。

HTTPレスポンスヘッダに206を指定しファイルをCGI経由でDL
させようとすると、500エラーが出てしまいます。
具体的には下記のようにしております。


print "HTTP/1.1 206 Partial Content\n";
print "Last-Modified: Wed, 24 May 2006 18:41:30 GMT\n";
print "Pragma: no-cache\n";
print "Accept-Ranges: bytes\n";

my $range = $ENV{'HTTP_RANGE'};
if($range =~ m/^bytes=(\d+)\-(\d+)$/){
my $offset = $1;
my $end = $2;
my $len = $end - $offset + 1;

print "Content-Range: bytes $offset-$end/$len\n";

$filesize = $len;
}

print "Content-Length: " . $filesize . "\n";
print "Content-Type: $content_type\n\n";

print while(<IMG>);
close(IMG);

エラー内容は「Bad header=HTTP/1.1 206 Partial Content」ですので
これを外せばエラーは出ないのですが、206を返す手段があれば
ご教示いただきたく思っております。 宜しくお願いいたします。
0098nobodyさん
垢版 |
2006/05/31(水) 22:22:31ID:???
Status: 206
は?

詳しくはrfc3875を読むべし。
0100nobodyさん
垢版 |
2006/06/02(金) 02:01:04ID:???
このスレに誘導するたぁ相当のアホだな
0101nobodyさん
垢版 |
2006/06/04(日) 13:53:27ID:TEaMbGuj
最近、ウェブ系の仕事を始めたものなのですが
CGIの負荷軽減テクニックみたいなのをまとめたページとか書籍などで
これぐらいは読んでおけ、とかいうのがあったら教えてください
0103nobodyさん
垢版 |
2006/07/13(木) 05:52:24ID:W+LiZmFW
sage
0104nobodyさん
垢版 |
2006/07/27(木) 11:56:01ID:g7jO7iq/
保守
0105nobodyさん
垢版 |
2006/07/27(木) 16:12:33ID:1uzwaimq
perlのコーディングスレが1000超えたまま次スレが見つかりませんでしたので
ちょっとこちらでお願いできませんでしょうか?

ダメでしたら誘導お願いします。
よければ回答お願いします。

perlの話です。
hoge.csvのファイルサイズが一定以下なら処理を中断してエラーメッセージを出したいのですが、
open FH,"hoge.csv";
print length <FH>;

これで一行目のはわかります。ループ処理すれば全行分もわかります。
でももっと一発でいける記述はないのでしょうか?
宜しくお願いします。
0106nobodyさん
垢版 |
2006/07/27(木) 16:24:17ID:???
>>105
新スレ立ててそこで質問してくれ。
ちなみに、私は立てられなかった。
0110105
垢版 |
2006/07/27(木) 19:52:08ID:1uzwaimq
>>108
statなんていう関数があったんですね。
物凄いありがっとぐ。
0112nobodyさん
垢版 |
2006/08/11(金) 11:58:00ID:nbBuAcLl
http://xx.jp/xx.cgi
というURLで、

print "Content-Type text/xml;charset=UTF-8\n";
print "Content-Length: ", length($data) + $data =~ s/\n/\n/g ,"\n\n";
print $data;

と返すように出力させています。(言語はPerlです)
$dataは
"<data no='1' />"
のような簡単なXMLを記述しています。

これに、とある会社がプロキシサーバを通してアクセスすると、
502を返してエラーになるみたいなのです。
プロキシなしで直でアクセスすれば<data no='1' />と
見れるようです。
恐らく、ヘッダ情報が不正とかそんな理由で弾かれているのだと思うのですが、
なにが足りないのかわかりません。
Content-Typeをapplication/xmlにしても同様のエラーがでるようです。

その会社は、サイト製作したクライアントのお得意様で、
本来ならその会社の人と詳しく調べるべきなのでしょうが
自分とはほとんど面識の無いのです。
こちらとしてはできる限りのことをあらかじめしておくくらいしかなく
困った状態なのですが、そのプロキシサーバのログ等がわからない状態で
やれることはありませんでしょうか。
0113112
垢版 |
2006/08/11(金) 12:01:40ID:nbBuAcLl
そのプロキシサーバの設定によっちゃどうやっても
無理な可能性もあるわけで、無茶な注文なんですが、
クライアントに作り手が悪いと思われているので
できる限りのことはしたいのです。
どなた様かお力を・・・

オラに力を
0114nobodyさん
垢版 |
2006/08/13(日) 00:54:08ID:???
print "Content-Type text/xml;charset=UTF-8\n";

print "Content-Type: text/xml;charset=UTF-8\n";
じゃなくて?

あと、ヘッダの改行は \n より \r\n の方が仕様に準拠しているそうですが...。
関係あるかな?
0115nobodyさん
垢版 |
2006/08/13(日) 01:17:38ID:???
そう言えば改行の個数をcontent-lengthに足してるのも怪しいな。
bimode STDOUT;して改行コードがいじられないようにするとか。
0116nobodyさん
垢版 |
2006/08/14(月) 19:59:29ID:???
串通してる時点で、サポート外だって言えばいいだけなような。
0117nobodyさん
垢版 |
2006/09/30(土) 17:19:05ID:wXHf+VTZ
定期age
0118nobodyさん
垢版 |
2006/10/10(火) 09:02:20ID:p77Yt6GB
定期sage
0119nobodyさん
垢版 |
2006/11/01(水) 09:21:57ID:L/Bbrvk1
スレ違いだったので移動してきました。

とあるアップローダーを無料サーバーで運営しています。
認証しないとダウンできないようにCGIを介してダウンロードさせる
仕組みなのですが無料サーバーゆえに30秒以上たつとプロセスが自動で
終わってしまうのです。低速の方が10MBのデータをダウンするのに
10分かかるとした場合に
CGIが出力したデータはサーバー側のバッファに溜まり普通に終了すると思ったのですが
どうなのでしょうか?
CGIはだだ ファイルを少し読み込んで出力のくりかえしです。

0120nobodyさん
垢版 |
2006/11/01(水) 13:51:29ID:L/Bbrvk1
上に関連して
http://x-beat.com/spec.shtm
でアップローダーやってるのですが

■負荷対応
・実行時間が30秒を越えるタスク(通常は1秒以内)、CPU使用率が15%を越えるタスク(通常は0.5%以内)は、強制終了されます。

自分は低速なのでupするのに 3分かかるのですがアップロードできます。
データを送信してる最中はcgiは実行されてないのでしょうか?
0121nobodyさん
垢版 |
2006/11/01(水) 14:17:40ID:???
ダウンに10分かかるならCGIはずっと実行中

アップローダーでCPU使用率15%超えるようなものは捨てたほうがいいよ

アップに3分かかるならその間はCGI実行される前だ
CGI実行の始めと終わりで時間差出せば簡単に確認できるやろ
0122nobodyさん
垢版 |
2006/11/01(水) 14:22:55ID:L/Bbrvk1
どうもです。確認してみます。
>アップローダーでCPU使用率15%超えるようなものは捨てたほうがいいよ
これは別の方法かもしくは低速は無視するということですか?
0123121
垢版 |
2006/11/01(水) 14:25:55ID:???
どうしても無視したくないならRangeヘッダに対応するとかすりゃいいんじゃないの?
0124121
垢版 |
2006/11/01(水) 14:31:30ID:???
ま、それ以外だとデカいファイルだったら小分けにするとかいろいろあるやろ
0125nobodyさん
垢版 |
2006/11/01(水) 14:36:50ID:???
なるほど考えて見ますありがとうこざいました。
0126nobodyさん
垢版 |
2006/11/04(土) 22:42:49ID:???
30秒というのはCPU時間のことなんだが。
0128nobodyさん
垢版 |
2006/12/02(土) 10:39:48ID:HKfE7B2v
PerlでCGIを作成しています。
HTMLのformタグでaction="○○○.cgi?mode=○○○"とすると、CGI側が上手く値を取得出来ません。

これは仕様ですか?
0129nobodyさん
垢版 |
2006/12/02(土) 15:38:24ID:???
$ENV{QUERY_STRING}から取得できなければwwwサーバが環境変数を正しくセットできてないか
ブラウザのバグ
0130nobodyさん
垢版 |
2006/12/03(日) 10:33:19ID:???
STDINとQUERYで上手く棲み分け出来てないだけだと思う。
httpdやブラウザを疑うよりは128の頭を疑う方が適切。
自分の無知を棚に上げて「〜〜だけどバグか?」と言い出すタイプ。
0132nobodyさん
垢版 |
2006/12/03(日) 19:10:24ID:/6jBKu8b
はじめまして。
仲間内で使えるアップローダを作ろうと思っています。
大量のファイル(デジカメの画像)を一発アップロードすることはできませんか?
たとえば <INPUT TYPE="file" ・・・>
だと、1つずつファイルを選択しないといけませんのでちょっと手間がかかるので。
0133nobodyさん
垢版 |
2006/12/03(日) 19:13:58ID:???
WebProg板の範囲で何とかするなら、1つずつ手間かけて
ファイルを選択してもらうしかないんじゃね?
レスを投稿する


ニューススポーツなんでも実況