トップページ⇒php
84コメント23KB

/*Perl.Ruby.php以外でCGI*/

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/10/26 23:52ID:dhsctoeW
無かったので立ててみた。
C、C++、Delphi、を初めコンパイル型はもちろん
ちょっと変わったインタプリタや、shスクリプト、
多分居ないだろけど、アセンブリ(書けるのか?)まで
わざわざ他の言語でCGIを書こうとする人のスレッドです。

サーバ情報や、cgi特有の問題、Tips、ネタフリまで
マターリと語りましょう。

ちなみに1はCとPythonとPerlしか出来ないのです (´〜`;)
0002名無しさん@お腹いっぱい。01/10/27 05:39ID:???
PostScriptでCGIって書けそうだよね:-)
httpdは既にあるわけだし。
問題は、PostScriptのコメントが % なので、
UNIXで標準的に使われる、#! を利用したファイルの実行が出来ない点。
いかにして GhostScriptを起動させるかなんだけど、何かいいアイデアない?
0003名無しさん@お腹いっぱい。01/10/27 09:49ID:???
以下の言語によるCGI/Webプログラムは専用スレがあります。

C/C++
 http://ebi.2ch.net/test/read.cgi/php/988918264/l50
JSP
 http://ebi.2ch.net/test/read.cgi/php/984840356/l50
ASP
 http://ebi.2ch.net/test/read.cgi/php/984840107/l50
Tcl
 http://ebi.2ch.net/test/read.cgi/php/993648764/l50
0004JAPU ◆JAPUTeX. 01/10/27 15:58ID:???
http://www.pugo.org:8080/
CGIじゃないけど、こういう馬鹿なものも存在するぞ。
0005JAPU ◆JAPUTeX. 01/10/27 15:58ID:???
2. で既出だったか。すまん。
0006名無しさん@お腹いっぱい。01/11/10 16:35ID:NImjyJBZ
こんなスレ有ったんですね ^-^
メモリのアロケート、リロケートのコツが解りません。。。
CONTENT_LENGTHみたいなのが有れば、簡単なんですけど、、
今は、snprintfとかstrncpyを使ってなるべくバッファを大きく取ってるんですが
FORMの内容みたいのはリストで順番にmallocするのが順当なんでしょうか
開放も面倒だし・・・ガベジコレクション萌え〜 (-、-)
0007名無しさん@お腹いっぱい。01/11/10 18:50ID:???
snprintfということはCかC++だろ。
getenv("CONTENT_LENGTH")は使えないのか?
0008名無しさん@お腹いっぱい。01/11/11 18:18ID:zKYmr+/j
>>7 アドバイスありがとうです、getenvは使えますが、私がタコなだけです (^-^;
勉強がてらBBSのプロトタイプを書いてみたら、案の定爆速なんですが
容量不定の入力に対処する方法がイマイチわかって無い感じです。
ソースがmalloc,freeでグチャグチャになってしまって、かなりヤバイ状態です
# 自分でも良く分からない状態 (汗;
0009名無しさん@お腹いっぱい。01/11/11 21:42ID:???
>>8
不定数のメモリブロックをmallocするときは、
そのポインタを別々の変数に記録しないで、
管理用の「ポインタの配列」に入れとくとくといいよ。
その管理用配列のサイズは、あらかじめすげー多めに設定しておくか、
あるいは最初にmallocした数で不足したらreallocで拡張する。
0010仕様書無しさん01/11/12 03:43ID:???
>>9
なるほど! 有難う御座います。今見てるコードはそんな風になっています。
管理用のポインタ配列と開放用の関数を作ってそこに投げてる様です。勉強になるなるです。。
やはり僕のコードは謎のランダム爆撃に見舞われていました (−_−)
厨房はmallocは最初だけにして、後は富豪的プログラムの方が良いような・・(汗;
ヒープをバリバリ使えるって凄いですね、難しいです。
これがC言語の壁なのかなぁ・・・・
0011仕様書無しさん01/11/12 03:53ID:???
何か日本語が変だ ^ー^:
0012名無しさん@お腹いっぱい。 01/11/12 06:07ID:j26yk8ni
お馬鹿なmalloc積んだ処理系でrealloc繰り返すと領域を再割り当てしまくって
酷くパフォーマンスが落ちるぞ。練習なら止めないが実用しようとしてるなら素直にスタック使って
例外に逃げる様にしといた方が良い。
汚染チェックはこれを使うと便利だ、perlのエンジン使ってるから直感的に分かるだろ
www.hi-ho.ne.jp/babaq/linux/bregexplib.html
0013名無しさん@お腹いっぱい。01/11/13 10:06ID:osDutJ9i
>12
これイイ!(・∀・)です。有難う!!
reallocは実験してみました、テキスト位だと全然OKなんですが何かでかいデータを
拡張するとmoveしまくってますね、断片化?、、メモリは難しいです。。。
あくまでも初心者の練習なんで (^-^;;

昨日BSubstを色々試してみました、Bsplitはフォームの分割とかに使えそうですー
今日帰ったらまた色々やってみますです。。 感謝!
0014神奈車 ◆Key/kjX6 01/11/13 18:42ID:???
TclでCGI組んでみたいけど、
参考書籍は近所の本屋に無いし
解説サイトも全然見つからないんだよな。
0015名無しさん@お腹いっぱい。01/11/13 22:07ID:???
適当に健作したらこんなん出てきたよ
http://www.amazon.co.jp/exec/obidos/ASIN/4894713454/250-8720670-6497858
http://www.oreilly.co.jp/out/cgipro/contents.htm この本欲しいな・・
http://www.kh.rim.or.jp/~maruoka/tcl/ デコード用とかのライブラリらしい
http://member.nifty.ne.jp/mstart/mgui/ MIND
つーかtcl面白そうだね、HSPみたいな感じかな??
文法的にはどうなん、C系とperlしかしらないけど、、大変かなぁ・・・
0016神奈車 ◆Key/kjX6 01/11/14 14:53ID:???
>>15
なるほど、じゃあamazonで注文しようかなー。
TclってPerl等と比べて処理が早いとか、何か長所とかあるのかな…?
0017名無しさん@お腹いっぱい。01/11/14 16:28ID:auFUazwk
こことか?
http://www.interq.or.jp/japan/s-imai/tcltk/advocacy.html
http://www.interq.or.jp/japan/s-imai/tcltk/perl.html
0018名無しさん@お腹いっぱい。01/11/14 16:31ID:pkXE9iGS
>>9
素直にリスト使うのじゃダメ?
0019名無しさん@お腹いっぱい。01/11/14 16:46ID:???
良く解らんからフリーしないってのはダメ?(死
0020901/11/14 22:20ID:???
>>18
STL使い始めたら、Cで自分でリスト処理書くのが面倒で。。。

>>19
どうせ瞬時に終わるCGIなんだから、それもあり。

ずっと前にとほほさんが「場合によってはfreeしなくてもよし」
と言って叩かれてたことを思い出すな。。。
0021名無しさん01/11/14 22:28ID:OzQP9bae
TclでCGI作ったりしてるよ。情報は少ないねえ。

「TclによるCGIプログラミング」はちょっと立ち読みしてみたら
作者の独自ライブラリを使って導入してるっぽかったから
買わなかった。
00221801/11/15 12:13ID:???
>>19
良く解らんのなら却下。
・そのプログラムが再利用されないこと確実
・Webサーバからの呼ばれ方がちゃんとわかってる
・OSのメモリ管理を信じられる
って前堤があるならアリ。

>>20
得心。確かにめんどい。
上限がわかってるなら配列にしちまった方がずっと楽だ。
でも、必要なときにはちゃんとリストを使わないとヒドイことになる。
見極めが肝心ってこったな。
0023名無しさん@お腹いっぱい。01/11/16 00:46ID:UpL8zLbH
はは、まだ自信が無いからC++ではワンショットなのしか書けないなあ・・
PERLもメモリに乗っちゃうと結構速いから、長く動かすのはついPERLに
頼っちゃったり (・∀・)♪
それにしてもこれは気になるなぁ・・・・
http://pc.2ch.net/test/read.cgi/tech/1002820903/l50
0024名無しさん@お腹いっぱい。01/11/17 14:23ID:Ow7Lb7Ro
Cで書いてみた。。超手抜きだけど (;・∀・)
http://www.alex0900.f2s.com/pre/prebbsC.cgi
んー、嫌になるほどでも無いけどやっぱり面倒だな
ちゃんと後片づけしてシグナルトラップしてだと結構大変そう。。。
0025名無しさん@お腹いっぱい。01/11/20 23:01ID:???
たいしたもんだね(・∀・)
あげとか下げとかCだと大変じゃ無い?
0026名無しさん@お腹いっぱい。01/11/24 08:42ID:???
>>24
目がキモイ
0027名無しさん@お腹いっぱい。01/11/25 16:31ID:F8Jjwqs3
テスト完了。めっちゃ欲しいです!、ゆずって下さい
0028名無しさん@お腹いっぱい。01/11/25 21:06ID:???
>>24
ログはどんな風に管理してるんですか?
2ch風のをベタ1ファイルにまとめるとPerlだとへこたれちゃうんで・・・
結構時間掛かりますかね?
0029名無しさん@お腹いっぱい。01/11/26 01:26ID:???
>>24

あのさ、空セルには全角スペースか何かを入れようよ。
ネスケを無視したくなる気持ちも分からないではないけどさ。あまりにも見苦しいので。
0030柚鈴車 ◆sMGFahw. 01/11/26 11:11ID:???
>>26
ジサクジエンというキャラですが
0031名無しさん@お腹いっぱい。01/11/26 12:46ID:AbbopxpL
>>30

ジサクジエンは>>25ですが。
0032名無しさん@お腹いっぱい。01/11/26 15:27ID:???
つーかこんなHTML書くやつがCで書ける訳ないだろ(ワラ
Perlで書いて自作自演してんだろどうせ
0033名無しさん@お腹いっぱい。01/11/26 15:37ID:???
アホが居るな。ソース公開するまで妄想でアホな事言うなよ。
■ このスレッドは過去ログ倉庫に格納されています