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

CGIだけど、なんか質問ある?Part 5

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/12/26 10:51ID:???
■過去ログ
 Part 3 http://pc.2ch.net/test/read.cgi/php/988727833/l50
 Part 4 http://pc.2ch.net/test/read.cgi/php/1000804655/l50

その他参考になるスレッドを >>2 に纏めたので、十分に調べた上で質問して下さい。
0002101/12/26 10:54ID:???
CGI以外のPerlに関する質問スレッド
 Perl 初心者コーナー
  http://pc.2ch.net/test/read.cgi/php/1003900311/l50
 CGIに依存しないPerlの話題一般
   http://pc.2ch.net/test/read.cgi/php/991313362/l50

Perl以外のCGIスレッド(別にこのスレで良いんだけど参考に)
 RubyでCGI
   http://pc.2ch.net/test/read.cgi/php/988948655/l50
 C言語CGI専用スレッド
   http://pc.2ch.net/test/read.cgi/php/988918264/l50
 TclでCGI作ってる人いる?
   http://pc.2ch.net/test/read.cgi/php/993648764/l50
 /*Perl.Ruby.php以外でCGI*/
   http://pc.2ch.net/test/read.cgi/php/1004107967/l50

その他のWEBプログラムスレッド
 【PHP】 質問スレッド
   http://pc.2ch.net/test/read.cgi/php/1003283567/l50
 ◆JSP◆
   http://pc.2ch.net/test/read.cgi/php/984840356/l50
 ==ASP==
   http://pc.2ch.net/test/read.cgi/php/984840107/l50
 ColdFusion
   http://pc.2ch.net/test/read.cgi/php/988191427/l50

その他の良スレ
 【Perl,CGI】参考書籍
   http://pc.2ch.net/test/read.cgi/php/988809842/l50
 スクリプト改造工房
   http://pc.2ch.net/test/read.cgi/php/988808396/l50
 こんなCGI探してますスレッド
   http://pc.2ch.net/test/read.cgi/php/1003132904/l50
0003名無しさん@お腹いっぱい。01/12/26 11:15ID:???
クソスレ立てるな

=======終了=======
0004名無しさん@お腹いっぱい。 01/12/26 11:21ID:???
串とIPとあゆ板下さい
それでは おながいします
0005名無しさん@お腹いっぱい。01/12/26 11:23ID:???
>>3>>4
0006名無しさん@お腹いっぱい。01/12/26 12:09ID:???
>>1==>>2==>>3==>>4
0007前スレ97901/12/26 12:18ID:BRFa7AfO
http://me.bird.to/hakoniwa/download.htmlから
箱庭諸島2 Ex.Version (based 箱庭諸島2ver2.30)

を落して自分のFreeBSDのサーバで動作させようと思ったのですが
http://xxx.xxx/xxx/hako/hako-main.cgi
にアクセスしたところ

つぎのターンまで、あと 0 時間 -16821368 分です 同時アクセスエラーです。
ブラウザの「戻る」ボタンを押し、
しばらく待ってから再度お試し下さい

というエラーがでていますいます。

/var/log/httpd-error.log にエラーは記録されてはいません。
どなたか何故エラーででるのあ教えてください

という質問をしました。

>httpのエラーと箱庭のエラー出力の区別付かんヤツには無理だと
>思われ

もちろん区別はついていますよ。
しかし、質問するのにこちらの情報はできるだけ出す必要が
あると思い「エラーログはでないの?」の質問が来てもいいように
最初に出しておきました。


どなたか原因を教えてください。
ローカルなサーバで外部に公開はしていないので上のアドレスは
デタラメでです。
0008名無しさん@お腹いっぱい。01/12/26 12:19ID:???
なに荒らしてるんだ?この糞厨房は。 >>3,>>4,>>6
0009名無しさん@お腹いっぱい。01/12/26 12:23ID:???
>7
スクリプトの製作者に聞くのがいい。
マジレス。
0010名無しさん@お腹いっぱい。01/12/26 12:40ID:???
同時アクセスエラーなんじゃ無いの?
0011前スレ97901/12/26 13:28ID:???
>>10
> 同時アクセスエラーなんじゃ無いの?

このエラーの意味が分からないのですが
自分一人しかアクセスしていないです。
0012名無しさん@お腹いっぱい。01/12/26 13:48ID:???
なら配布所で聞く事を勧める
多分人数制限にセマフォとか排他してて、それが詰まってるのでは
と言う意味で書いた
見に行ったらperlだったんで萎えた、cppVer使ってるなら追っても良いけどね
0013名無しさん@お腹いっぱい。01/12/26 14:36ID:???
use CGI qw(:standard);
$qq = new CGI;
print $qq->header(-type=>"text/plain", -attachment=>"data.txt");

ってやってもNetscape6.2でファイルの保存ダイアログが開きません。
(IE5.5は開く)
何か対策はありますでしょうか。内容はテキストデータです。
0014名無しさん@お腹いっぱい。01/12/26 15:37ID:???
text/plain を適当に変えれ。
0015親切な人01/12/26 16:15ID:???

ヤフーオークションで、幻の人気商品、発見!!!

今は無き「コピーガードキャンセラー」↓
http://page2.auctions.yahoo.co.jp/jp/auction/b19193423

ヤフーオークション内では、現在、このオークション
の話題で、持ちきりです。
0016名無しさん@お腹いっぱい。01/12/26 17:02ID:???
>>14 てっ適当に?

なるほどapplication/octet-streamにしたらダイアログが出ました
ありがとうございます。
こういう時につかうスタンダードなヘッダってありますか?
00171401/12/26 17:13ID:???
俺は application/x-download にしてる。
0018名無しさん@お腹いっぱい。 01/12/26 17:59ID:???
http://pc.2ch.net/test/read.cgi/php/1000804655/514-515n
前スレで、CGIの負荷はむしろアクセス数のほうが問題だ。みたいな事言われているんですが、
ログを書く代わりにhtmlに保存するような掲示板の場合、そのhtmlを書くときに多少無理やっちゃっても大丈夫でしょうか?
たとえば、100kb位の配列をreverseとか。
0019名無しさん@お腹いっぱい。01/12/26 18:04ID:???
>>18
絶対やっちゃ駄目
100KBの配列をreverseすると、しない時と比べてメモリを2MB以上消費します(構文解析時のワークエリアも含めて)
良くてアカウント停止、最悪サーバが落ちます
00201801/12/26 18:08ID:???
>>19
ありがとうございます。
自鯖で試して、明らかにreverseが重かったので不安になってました。
ところで、reverseの代替となるアルゴリズムって何かありますか?
負荷にならないようなのがいいんですが。。。
0021名無しさん@お腹いっぱい。01/12/26 18:10ID:???
>19
Perlの話ですけど便乗質問よろしいでしょうか?

reverseでやるとまずいそうですけど、例えば
foreach(reverse(@data){$_を処理}
for($i=$#data;$i>=0;$i--){$data[$i]を処理}
この2者の場合、後者の方がいいということでしょうか?
00222101/12/26 18:12ID:???
)の数打ち間違えたのはご容赦を(あせ
0023名無しさん@お腹いっぱい。01/12/26 18:14ID:???
コラコラ w
>18 配列のサイズ書かれても分からんよ
50KBの要素が2個の配列か、1バイトの要素が102400個かで全然違うだろ?
つーか構文解析に2MBも使わないって(苦笑
0024名無しさん@お腹いっぱい。01/12/26 18:15ID:???
後者。
0025名無しさん@お腹いっぱい。01/12/26 18:16ID:???
それとサーバーも落ちない 
00262101/12/26 18:18ID:???
>24
ありがとうございます。
自分のスクリプトを手直ししてみようと思います。

ところでこういった事はどこで勉強されるのでしょう?
大抵の書籍とかはプログラミングの仕方は書いてあっても
こういった速度などに関するものはあまりないように思えて・・・。
よろしければご指導お願いします。
0027名無しさん@お腹いっぱい。01/12/26 18:50ID:???
reverseってそんなに遅かったかな
双方向リスト反転してるだけじゃ無いの? #未確認だけど・・・
0028こういう質問はここでいいのかな?01/12/27 01:36ID:DukV2Cc1
ネットゲーとはどういう構造なんでしょうか?
たとえばネット対戦できる麻雀ゲームを作成するとすればどういうスキルを習得すればできるんでしょうか?
初心者には無理だってことは承知ですが、参考までにおしえてください。
0029名無しさん@お腹いっぱい。01/12/27 01:42ID:???
               ,ィミ,        ,ィミ,               フ
                彡 ミ        彡 ミ,            ヤ |
             ,,彡   ミ、、、、、、、、彡  ミ,     (⌒)    レ  |
            彡;:;:             ミ,    (  ヽ   ヤ
         〜三;:;:::::              彡〜  ノ  ノ   レ
         ~~三:;:;:;:::::  -=・=-   -=・=- 三~~ ヽ (    :     ;;
         ~~彡::;:;:;:;:::..     ___     ,三~~ ( ノ ,,,,,  :      ;;
          ~~彡;:;:;:;:;:;:;:.    |┴┴|    ,ミ~~ ノノ ;'" ,,ノ―、     ,;'
          ~~彡:;:;:;:;:;:;:;:;.  ノ――| ---==ニノ ,;'′ >=ニ(二二二()
     ,...-''''""~~,::;:;::;::;::;::;'            ミ,,  ,;'′  ゝ--〈
____,;";;:;;;;;;;;;;;;;;;;;;;;;:;:;:;:;:;:;:;            i! ミ,,,,;'′   `ー‐'
           ::::ミミミ:;:;:;:           ミ::      ,;' ̄ ̄ ̄ ̄|  \___/
            :::::ミミミ:;:;:           ミ:::,   ,;::''′        |.    \/
            ::::ミミミ:;:;::       ,;+''"~~゙+、~'''''~          |     |
             ::::ミミミ:;:;:;:     ,+'"     ミ:::::           |   ━┷━━━┳━━━━
               :::::ミミミ:;:;:;:;:  >':;:       ミ::              |             ┃
             ::::::ミミミ:;:;:;:;:;../;:;:;:       ;:"             |             ┃
              ::::::::ミミミミ:;:/;:;:;:;:    ,.+'"''-、________|__         ┃
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄;':;:;:;:   ,.+'"    ミ、              l          ┃
                 ::::::ミ;:;:;:;:.. ..ミ:::ミ:;:     ミ               l          ┃
                  ::::::しUUU┘::::ミ:;:     ミ               l          ┃
                  :::::::::::::::::::::::::::└UUUじ                 l          ┃
__________________________________,l          ┃
                                                 ━━━┻━━━
0030名無しさん@お腹いっぱい。01/12/27 01:59ID:???
麻雀のルール
0031名無しさん@お腹いっぱい。01/12/27 02:16ID:???
でかいAA貼るアフォに出会わない運
0032 01/12/27 04:13ID:N1sjwrTI
質問です。
自鯖でCGI(掲示板、C言語で書かれた物)を動かそうと思ってるんですが、うまく動いてくれません。
拡張子をexeに変えてローカルで実行すると、ファイルが大きすぎてメモリに入りきらないというエラーが返されます。
winの設定の問題でしょうか?ちなみに、メモリは256MB,OSはWin2k、httpdはan_httpdです。

#もしかして板違い・・・??(;´Д`)
0033login:Penguin01/12/27 04:17ID:???
>>32
不幸だ。
コンパイラって知ってる?
00343201/12/27 04:34ID:???
そりゃもちろんコンパイルはしましたよ。
そのコンパイル済みのバイナリファイルが実行できないんです。

vine2.1.5でコンパイルしてきた奴なんですけど、それじゃダメっすか??
00353201/12/27 04:35ID:N1sjwrTI
イチオウアゲ
00363201/12/27 04:37ID:N1sjwrTI
あ、
>拡張子を〜〜
のとこで勘違いされました??
コンパイル→exe→cgi→(゚д゚)マズー
じゃぁexeのまんまでどうだ?→(゚д゚)・・・ー

です。
0037デフォルトの名無しさん01/12/27 04:55ID:???
どうだって言われても・・・・
vineのソフトはWINじゃ動かないだろ?
それともクロス魔術師がコンパイルしたんだろうか
0038login:Penguin01/12/27 04:55ID:Y9+IS1nf
>>34
え・・・vine上でコンパイルしてどこで実行しようとしていらっしゃるのでしょうか
00393201/12/27 04:56ID:???
vineのソフトじゃなくて、.tar.gzでアーカイブされてたからlinux上でコンパイルしてきたんです。
それでもダメでしょうか?
00403201/12/27 04:57ID:???
>>38
すれ違い・・・(;´Д`)ァゥァ

vineでコンパイルしてwinで動かそうとしてるんです。
0041デフォルトの名無しさん01/12/27 05:00ID:???
ふつーコンパイラは自分のインストールされてる環境に合わせた
コードを生成します。
しかし、諦める事はありません。
enterキーを押す時に強く念じるのです!
「これはWINで使うんだよぅ〜〜 (-人-)ナムナム」
そうすれば、小人さんがWINDOWS用のexeファイルを頑張って作ってくれます
難しいけど、、、
頑張って!

# と言うコピペがどっかで有ったよ ^^;
00423201/12/27 05:01ID:???
>>41
やぱダメですか・・・(;´Д`)
つーかワラタ(w
winでなんとかコンパイルする方法ありませんか??
ヘッダファイルを無理矢理持ってくるとか・・・
0043デフォルトの名無しさん01/12/27 05:06ID:???
えっとここでWIN用のフリーのコンパイラが有るから頂戴すれ
http://www.borland.co.jp/cppbuilder/freecompiler/
んでもって、コイツを設定してこれでコンパイルしてみ
だた処理系依存は当たり前だから、下手するとヘッダさえ
見つからない事もある
と言うか、大きいアプリなんかは絶対無理だ

# BBS位ならうごくかもね
00443201/12/27 05:08ID:???
borlandやらLSI試食版やらはもう持ってるんですよ(;´Д`)
でも、コンパイルするとヘッダファイルが足りないみたいなんです。
今日はもう寝ますんで、明日また色々調べて挑戦したいと思います。
こんな時間にありがとうございました。
0045デフォルトの名無しさん01/12/27 05:18ID:???
お前はコンパイラ持っててそんな事も知らんかったのか (^^
まぁ、規模にもよるだろけどBBS位なら大抵同等のヘッダが有るから
それを使え、ついでにC++もべんきょすれ
00463201/12/27 05:21ID:???
まだ起きてたり・・・

いやぁ、よくわからないんですけど、unistd.hてのがincludeフォルダに無いんですよ(;´Д`)
どっかで落として来れるもんなんでしょうか?
明日linuxから持ってきてincludeフォルダに置いて再度挑戦してみます。
それでは、おやすみなさい。。。
0047login:Penguin01/12/27 05:23ID:Y9+IS1nf
>>46
何も考えず、そのままvine上で動作させれば良いと思うんだが
00483201/12/27 13:30ID:???
おはようございます。

>>47
いえ、今鯖をlinuxに移行する為の準備期間ってことでlinux勉強中なんですよ。
で、繋ぎとして新しい掲示板をwinで使って見ようかな、と。

さ、これから歯医者いってから試してみたいと思います。
結果は後ほど・・・
00493201/12/27 17:08ID:???
結果報告。

必要なヘッダファイルを持ってきた所、なんとかコンパイルできました。
チョト強引かもしれませんが・・・(;´Д`)
しばらくはこれで繋いで、頑張ってlinux勉強しようと思います。
ありがとうございました。
0050えいじ01/12/27 19:35ID:VRi8wtO1
open(OUT,+>filename.txt);
print OUT "あいうえお\n";
close(OUT);

でfilename.txtが新規作成されますよね。
でも作成場所をトップディレクトリにした場合はは
新規作成されません。
どうしたら解決できるかご存知の方おられますでしょうか。
よろしくお願いいたします
0051名無しさん@お腹いっぱい。01/12/27 20:00ID:???
>>50
何箇所にマルチポストしてるの?
0052sage01/12/28 00:55ID:P8B6/AoK
>Perlの実行速度
簡単に出せますよ。
$CPU_start = (times)[0] ;
処理内容
$CPU_end = (times)[0];
printf("<DIV align=right>消費時間: %.3f CPU秒</DIV>\n",$CPU_end-$CPU_start);
printf("</body></html>"); # by水沢
0053sage01/12/28 00:56ID:P8B6/AoK
いちお
print "Content-type: text/html\n\n";
出すの忘れないでね(汗
0054 01/12/28 01:07ID:D/y9CjEc
今の2ch見てて思ったんですけど、鯖に、hoge.cgi/php/〜〜っていうブラウザからのリクエストが届いた時に、
read.cgiっていうフォルダを探しちゃったりしないんでしょうか?
それとも、そうさせないための方法とかあるんでしょうか?
どなたか、ご教授下さい。
0055名無しさん@お腹いっぱい。01/12/28 01:12ID:???
はぁ何言ってるのオマエ?
ニホンゴハナセヨヴァーカ
0056     01/12/28 01:15ID:???
中途半端な煽りレス返すんなら来るんじゃねぇよ。
・・・オレモナー






などと逝ってみるテスd
00575401/12/28 01:18ID:D/y9CjEc
えと、書き方が悪かったでしょうか・・・。
read.cgiより後ろの文字列は、URLとして解釈されるのか、それとも環境変数に代入(?)されるのでしょうか?
0058名無しさん@お腹いっぱい。01/12/28 01:24ID:???
環境破壊反対!!
0059名無しさん@お腹いっぱい。01/12/28 01:25ID:a98yftGH
>>32
コンパイラちゃうくて、
インストーラーだっけ?
なによく知らんけど、
WINってバージョンあったよね。
0060馬鹿01/12/28 01:27ID:???
馬鹿が馬鹿よ呼ぶ大変な状態です!!
0061名無しさん@お腹いっぱい。 01/12/28 01:30ID:???
>>57
何が言いたいのか分からない。
環境変数ってどの環境変数??
URIとして解釈されないとパラメータの意味が無くなると思うんだが・・・・
00625401/12/28 01:50ID:???
今いろいろ見てきました。
hoge.cgi/**
の、**の部分が環境変数PATH_INFOに入るということは実験できたのですが、
それでもcgiの実行結果が返ってくるということはhttpdはそのディレクトリは探してないのでしょうか??

>>61
ちょっと自分でもこんがらがって、うまく伝えられない状況(;´Д`)
ググールへ逝って来ます・・・。
0063名無しさん@お腹いっぱい。01/12/28 02:09ID:???
ああ、そう言う事か
httpdがリクエスト貰ったらDocumentRootからディレクトリを辿って行くのな。
んでディレクトリじゃ無くてファイルか見つかった時点で
httpd_conf何かの設定を見て、そのファイルがexecCGIされてたら
/ 以降をhttpdがEnvのPATH_TRANSLATED何かにセットしてファイルをオープンする訳
まあ大体どんなサーバでもこんな感じでファイルを探してる
これでOK?
0064名無しさん@お腹いっぱい。01/12/28 02:11ID:???
だからこれは通らない訳だな
http://pc.2ch.net/php/index.html/foo
00655401/12/28 02:41ID:???
>httpdがリクエスト貰ったらDocumentRootからディレクトリを辿って行くのな。

なるほど、これで謎が解けました。
つまり、優先順位(?)はディレクトリよりファイルが先だからhoge.cgiが見つかって
それが実行出来る物であったら、それ以下、?より前の部分がPATH_INFOに入れられるワケですね。

口下手ですいませんでした、ありがとうございました。
0066あげてみる01/12/28 09:35ID:???
>>64
通らないってどゆこと?
普通に見えちゃったんだけど・・・。

けど、webprog板だけ、何故かバナーと背景が見えないなあ。
他の板は普通に見えるのに。
謎だ。なんか基本的なことを見落としているのだろうか・・・。
0067名無しさん@お腹いっぱい。01/12/28 09:50ID:???
> つまり、優先順位(?)はディレクトリよりファイルが先だからhoge.cgiが見つかって
優先順位も何も、同じ名前でファイルとディレクトリは作れない。
0068名無しさん@お腹いっぱい。01/12/28 10:28ID:I1y72yIj
i-mode用サイトでPCのアクセス不可にしてるとこがあるけど、
CGIでやる場合はHTTP_HOSTで振り分けるの?
0069名無しさん@お腹いっぱい。01/12/28 11:36ID:???
いや、REMOTE_HOSTじゃないかに
0070 01/12/28 11:38ID:???
REMOTE_HOSTかHTTP_USER_AGENTだね
0071初心者ですみません01/12/29 07:33ID:IhpmkgLt
書くところ間違えた(鬱)

掲示板のレス部分にタイトル変更機能が付いてない物を改造しているのですが、
親記事のタイトルが$subj、レスが$rsubjに格納しているとして
if ($subj) { $rsubj = "Re\: $subj"; }
print "\t<b><font color=\"#ff00ff\">$rsubj</font>

これでレス部分に「Re:(親タイトル)」表示が出来たのですが、
自分がレスフォームから書き込んだタイトルを反映させるにはどうすればいいでしょうか。
<input type="text" size="30" name="rsubj" value="Re: $subj">
このようにタグは書いています。
0072 01/12/29 09:46ID:???
ソース無しにどう答えろと?
0073 01/12/29 09:48ID:???
それからスクリプトの改造はこちら
http://pc.2ch.net/test/read.cgi/php/988808396/
0074ななぴ01/12/29 10:23ID:A1ZmLDMN
正規表現ってなに?簡単に言えや
0075名無しさん@お腹いっぱい。01/12/29 11:04ID:???
Regular Expressions
00762チャンネららら01/12/29 18:45ID:Dxg9d8II
ここのスクリプトはどう?
2ch型なんだけど・・・。

2ch型マイナー掲示板「はにちゃんねる」
http://www.isn.ne.jp/~honey/hc/
アクセス数アップキャンペーン中、みんな紹介よろしこ。
0077名無しさん@お腹いっぱい。01/12/29 19:24ID:RtOopK2q
htaccessって何て読むんですか?
0078名無しさん@お腹いっぱい。01/12/29 19:26ID:???
>>77

ハイパーテキストアクセス
0079名無しさん@お腹いっぱい。01/12/29 19:27ID:???
ht(tp)-accessと考えれば自ずと…。
0080娘にハァハァ01/12/29 23:25ID:???
Hな父さんがアクセス
0081デフォルトの名無しさん01/12/30 00:45ID:???
エッチティーティーピーディーアクセスコンフィギュレーションファイル
0082どこが違うの?01/12/30 08:08ID:Xs3aU9Xx
#!/usr/local/bin/perl

$rhost = $ENV{'REMOTE_HOST'};

print "Content-type: text/html\n\n";

print "<html><head><title>ENV REMOTE_HOST</title></head><body>\n";
print "あなたのリモートホストは、$rhostです。\n";
print "</body></html>\n";
0083どこが違うの?01/12/30 08:13ID:Xs3aU9Xx
あ、REMOTE_ADDRだと出来た。
なんでリモホはダメなのかなあ
0084名無しさん@お腹いっぱい。01/12/30 11:18ID:???
なにがどうダメなの?
あなたの脳内を他人は読めないよ
0085名無しさん@お腹いっぱい。01/12/30 11:21ID:???
>82-83
最近は使えないところが多いね。
何でダメかはサーバー会社にでも聞いたら?
■ このスレッドは過去ログ倉庫に格納されています