- 1 名前:nobodyさん [04/02/26 08:58 ID:GDAQuNNS]
- C言語CGI専用スレッド
pc2.2ch.net/test/read.cgi/php/988918264/ C/C++ CGI 専門のスレッドです。 スクリプトを検索できるサイトです。 cgi.resourceindex.com/Programs_and_Scripts/C_and_C++/ www.cgifiles.com/scripts/cc++/index.shtml 前スレ pc2.2ch.net/test/read.cgi/php/988918264/
- 226 名前:nobodyさん mailto:sage [04/08/14 21:28 ID:???]
- 言語の違いにおける速さの差は線形だけど、
アルゴリズムの差は簡単に対数以上になっちゃうからね
- 227 名前:nobodyさん mailto:sage [04/08/14 21:41 ID:???]
- 回るのは遅いけど何か書くと即効でレスが返ってくるんだよなここ
見てる奴は多いのかな
- 228 名前:nobodyさん mailto:sage [04/08/14 21:42 ID:???]
- 粘着がいるだけだろ
- 229 名前:nobodyさん mailto:n [04/08/15 11:26 ID:???]
- HPでCのCGIを使いたいのですが、
コンパイル時のコマンドは gcc -o test.cgi test.c でよいのでしょうか?
- 230 名前:nobodyさん mailto:sage [04/08/15 11:55 ID:???]
- >>229
HP-UXだとccだろ。
- 231 名前:nobodyさん mailto:sage [04/08/15 12:15 ID:???]
- >>229-230
ワラタ
- 232 名前:229 mailto:n [04/08/15 12:39 ID:???]
- HPはホームページの略で使いましたが…紛らわしいですね。
ccは使えないんですが…
- 233 名前:229 mailto:n [04/08/15 13:24 ID:???]
- とりあえず
gcc -o test.cgi test.c でコンパイルして テストしてみたのですが、エラーが出てしまいます。 パーミッションは755でcgi-binディレクトリにも入っているけど エラー500が出てしまいます。 また、ソースも問題ないと思うのですが… #include <stdio.h> int main(void) { printf("Content-type: text/html\n\n"); printf("Hello"); return 0; } 原因は何でしょうか?
- 234 名前:nobodyさん mailto:age [04/08/15 13:35 ID:???]
- ( ゚д゚)ポカーン
- 235 名前:nobodyさん mailto:sage [04/08/15 14:55 ID:???]
- エラーメッセージも書いてない香具師に釣られるなよ
- 236 名前:nobodyさん mailto:sage [04/08/15 14:59 ID:???]
- >>235
Internal Server Errorと言う答えになんの意味があるというのだ。
- 237 名前:nobodyさん mailto:sage [04/08/15 15:00 ID:???]
- \n -> \r\n\r\n
- 238 名前:nobodyさん mailto:sage [04/08/15 15:00 ID:???]
- Windowsかよ
- 239 名前:nobodyさん mailto:sage [04/08/15 15:02 ID:???]
- サーバと違うOSでコンパイルしてるんじゃないのか?
テキストモードでうぷしたりしてるんじゃないのか? sshで接続してスタンドアロンで動くかどうかまず確かめろよ。 あとは考えるのマンドクセ。
- 240 名前:229 mailto:n [04/08/15 15:04 ID:???]
- 確かサーバー側はLINUXだったので違うOSですね。
- 241 名前:nobodyさん mailto:sage [04/08/15 15:10 ID:???]
- サーバーでコンパイルするかクロスコンパイルでぐぐってね。
ばいばい。
- 242 名前:nobodyさん mailto:sage [04/08/15 16:05 ID:???]
- >>240
で、コンパイルマシンはHP-UXなのか?
- 243 名前:229 mailto:n [04/08/15 23:43 ID:???]
- コンパイルマシンはWINDOWSです…
- 244 名前:nobodyさん mailto:sage [04/08/16 00:08 ID:???]
- 窓のアプリケーションがLinuxで動くわけなかろーがこのバカチンがー
マジレスすると、お前には無理なので諦めろ
- 245 名前:nobodyさん mailto:kuma [04/08/16 00:14 ID:???]
- おまいら釣られすぎ
- 246 名前:nobodyさん mailto: [04/08/16 00:18 ID:???]
- >>244
Perlと同じ感覚なんじゃないかと
- 247 名前:229 mailto:n [04/08/16 00:28 ID:???]
- もうちょっと勉強してからやります。
Perlと同じような物だと思ってました…
- 248 名前:nobodyさん mailto:sage [04/08/16 06:26 ID:???]
- >>247
>もうちょっと勉強してからやります。 >Perlと同じような物だと思ってました… プロの釣り師だな
- 249 名前:nobodyさん mailto:sage [04/08/20 02:03 ID:???]
- >>229 >>247
マジ釣られしてやろう。スクリプト言語は文字ベースの互換性があるが、 コンパイル言語はバイナリベースでの互換性を確保しなければならん。 よって、互換プラットホーム間でなければ動かん。 もっと勉強汁。
- 250 名前:nobodyさん mailto: [04/08/21 11:33 ID:???]
-
- 251 名前:nobodyさん mailto:sage [04/08/21 12:59 ID:???]
- WindowsでGCC使ってクロスコンパイルかけたのかもしれないじゃないか。
100%ないけど。
- 252 名前:nobodyさん mailto: [04/08/21 16:06 ID:???]
- gccを使っているのは確かだ。
- 253 名前:nobodyさん [04/08/22 23:49 ID:OO5ezOdW]
- でもいかりや長介が逝っちゃったことに
変わりはない。 無念!
- 254 名前:nobodyさん mailto:sage [04/08/23 09:54 ID:???]
- >>253
コスモを感じる
- 255 名前:nobodyさん mailto:sage [04/08/24 12:54 ID:???]
- UTF-8の掲示板作ったら、出力サイズが2chに比べて2〜3倍になったorz
2chのhtmlを保存してUTF-8に変換してもまだ1.5倍。 マークアップしつこすぎたかな…。 <div class="res"> <div class="data"> <h3 class="name"><span class="number">5</span> <span class="label">投稿者</span> <a href="mailto:tokimushi@yahoo.co.jp" title="この投稿者にメールを送る">名前</a></h3> <ul> <li class="time"><span class="label">投稿時刻</span> 2004年08月07日(土)17時54分04秒</li> <li class="url"><a href="www.w3.org" title="この投稿者のウェブサイトへ">HOME</a></li> </ul> </div> <div class="comment c3 kuma"><p>なんだかんだ</p></div> </div>
- 256 名前:255 mailto:sage [04/08/24 12:56 ID:???]
- 誤爆すいません
- 257 名前:nobodyさん mailto:sage [04/08/24 13:22 ID:???]
- >>255
UTF-8の掲示板は重いから嫌
- 258 名前:nobodyさん mailto: [04/08/30 09:03 ID:???]
-
- 259 名前:nobodyさん mailto: [04/09/07 13:19 ID:???]
-
- 260 名前:nobodyさん mailto:sage [04/09/07 22:17 ID:???]
- ネタがありませんなあ
- 261 名前:nobodyさん mailto:sage [04/09/08 00:54 ID:???]
- こっちは微妙に伸びとる
ttp://pc5.2ch.net/test/read.cgi/php/1048393217/
- 262 名前:nobodyさん mailto: [04/09/08 01:07 ID:???]
- pc5.2ch.net/test/read.cgi/php/1048393217/
- 263 名前:nobodyさん mailto:sage [04/09/26 01:20:15 ID:???]
- 遅レス
>>255 うほ、いいdiv厨
- 264 名前:nobodyさん mailto:sage [04/09/27 13:16:42 ID:???]
- カウンタを作ってるのですが
日にちがかわったら今日のカウントを昨日のカウントへコピーして 今日のカウントを初期化するIF分がわかりません 教えてください
- 265 名前:nobodyさん mailto:sage [04/09/27 14:56:10 ID:???]
- ( ゚,_ゝ゚)バカジャネーノ
- 266 名前:nobodyさん mailto:sage [04/09/27 16:58:41 ID:???]
- >>264
お前プログラム向いてないよ。サンプル漁る位しれ。
- 267 名前:nobodyさん [04/09/27 21:25:52 ID:yrxaF59A]
- 釣れた!初めてなのに釣れちゃった!(AA略
- 268 名前:nobodyさん mailto:sage [04/09/27 23:08:37 ID:???]
- こんな活きの無い魚でそんなに喜ぶなよ
- 269 名前:nobodyさん mailto:sage [04/10/01 15:04:26 ID:???]
- 活きの無い
( ´,_ゝ`)プッ
- 270 名前:nobodyさん mailto:sage [04/10/01 16:56:12 ID:???]
- 4日も経ってからsageで煽るなって
- 271 名前:nobodyさん [04/10/01 17:46:36 ID:qscnRJvR]
- あのーPHPがアパッチのモジュールで動作するから早いって聞いたんですよ・・・
Cで書いてもCGIとして実行してたらプロセスとして実行するから結構負荷がかかっちゃいますかね・・・ でもCGI使わずにモジュールで動作するようにすればCの方が早いんですかね・・・ PHPの開発は日本人が多いから日本国内ではPHPの方が早いってことになってるんですかね・・・ それともベンチマークテストやったら実際に早いんすかね・・・ そこらへんをすっきり説明してくださる方おりませんか?
- 272 名前:nobodyさん mailto:sage [04/10/01 17:48:41 ID:???]
- なんか不勉強で人頼みな奴ほど速度を気にするように思うんだけど、
これってマーフィーの法則ですか。
- 273 名前:nobodyさん [04/10/01 17:52:03 ID:qscnRJvR]
- はいーわたしはマーフィーの法則にしたがって行動しております。
補足なんですけど〜CGIもモジュールですよね〜 PHPのそれはどんなモジュールなんですかね〜 PHPより高速になるCGIモジュールってありますかあ?
- 274 名前:nobodyさん mailto:sage [04/10/01 17:53:56 ID:???]
- 裏が取れないという点ではそうかも
背景としては、本来速度を気にする人ってのはハードなシステムを組まされてる人なんだけど、 この手の輩は四六時中ボトルネックを探してるので、何すれば早くなるかとか、早いってのは どういうことかとか正攻法で理解してて、あんま質問を垂れ流さないってのがあるんだと思う ところで最近はチューンするにしてもApacheのモジュールにしちゃうこと減りましたね ってこのネタもスレ違いかorz
- 275 名前:nobodyさん mailto:sage [04/10/01 17:54:54 ID:???]
- >273
うっぜ 死ねカス
- 276 名前:nobodyさん [04/10/01 18:04:01 ID:qscnRJvR]
- あれへんだなあ・・
何言ってるかわかんなくなってきちゃった・・・・ でもさあPHPってHTMLに記述するスクリプト言語ですよねェ〜 それをパースして実行するんですからあきらかにコンパイルしたCの プログラムの方が早そうに思えるんですけどねエエ・・・・
- 277 名前:nobodyさん [04/10/01 18:07:17 ID:qscnRJvR]
- >>275
ウゼェ じゃないんですかああ? うっぜってどこの方言ですかアア?? やぱありCGIでPHPを使った方がいいんですかねえ・・・ どうなんですかねええ 優秀なみなさ〜〜ん
- 278 名前:nobodyさん mailto:sage [04/10/01 18:09:14 ID:???]
- phpをネタに持ってきた時点で脳が古い。
センスもなし。
- 279 名前:nobodyさん [04/10/01 18:18:02 ID:qscnRJvR]
- >>272
あ〜ちなみにおくれつっこみですけどお〜〜 それはマーフィーの法則とはいいませんよ〜 それは272さんとその仲間達(272本人かも・・)の法則ですよ〜〜 それとも次ぎのマーフィーの法則に載るんですかあ〜〜 それともマーフィーの法則っていっとけばカッコイイと思ったんですかあ〜 マーフィーの法則をネタに持ってきた時点で脳が古いですよ〜 扇子あげましょうか?
- 280 名前:nobodyさん mailto:sage [04/10/01 18:23:01 ID:???]
- >>274
2chでのやりとりなんてほとんどマーフィーの法則に嵌ってるだろ。
- 281 名前:nobodyさん mailto:sage [04/10/01 18:29:10 ID:???]
- >>278
昔はPHPなら速度比較と処理負荷だけで飯五杯はいけたんだが・・・ もはや残ってる部分といえばコードキャッシュネタくらいか Cでおかずになるネタは・・・このスレの伸びが何かを語っているな・・・
- 282 名前:nobodyさん mailto:sage [04/10/01 18:31:49 ID:???]
- >>280
それ自体もそうでつか
- 283 名前:nobodyさん mailto:sage [04/10/01 18:35:57 ID:???]
- たいていがマーフィーの法則に当てはまることが法則ってのじゃ利用価値ないじゃん。
どうでもいいけど昔、マ板かどっかにCのコーディングにありがちな「マーCの法則」スレとか無かったっけ。 田代がまだ只の人だったころの話なのだが。
- 284 名前:nobodyさん mailto:sage [04/10/01 18:48:52 ID:???]
- >>283
そりゃ田代本人が出した本のタイトルじゃないのかw PHPは旬過ぎたけど user ml がまだまだアツイぜ
- 285 名前:nobodyさん mailto:sage [04/10/01 19:01:49 ID:???]
- news13.2ch.net/test/read.cgi/news/1096597691/
反応が薄いな
- 286 名前:nobodyさん [04/10/19 10:52:37 ID:eOcRyqWU]
- Apache2のWinネイティブなCGIでActiveXEXEと
やりとりってできないんでしょうか? CGIを普通に起動する分にはちゃんとできてるのですが・・・ いちおうApacheのサービスは「デスクトップとの対話を許可」してあります
- 287 名前:nobodyさん [04/10/21 10:38:39 ID:GNUlgmPe]
- cとphp
おれはcの方が早いと信じたい!
- 288 名前:nobodyさん mailto:sage [04/10/21 23:49:17 ID:???]
- >>286
なにがやりたいのかいまいち不明
- 289 名前:nobodyさん mailto:sage [04/10/24 21:41:04 ID:???]
- アルゴリズムによってはCの方が早くなるんじゃないだろうか
url文字列のほうは良いんだがmultipart/form-dataのクラスをどういう構造にしたら分りやすいかちょっと悩む ただの文字列はoperator[]でファイルのときはファイルの情報を持ったオブジェクトを返すでいいかな
- 290 名前:nobodyさん mailto:sage [04/10/24 21:57:41 ID:???]
- 車輪の再開発してないで既存のライブラリ使えよ
- 291 名前:nobodyさん mailto:sage [04/10/27 11:54:00 ID:???]
- 単純で良い物が無い
- 292 名前:nobodyさん mailto:sage [04/10/27 23:05:12 ID:???]
- 単純でよければ自作すればいいじゃーん
- 293 名前:nobodyさん mailto:sage [04/10/27 23:06:32 ID:???]
- だからしてるんじゃないか
- 294 名前:nobodyさん mailto:sage [04/10/28 06:15:52 ID:???]
- このスレはドリフだな
- 295 名前:nobodyさん mailto:sage [04/10/30 02:13:13 ID:???]
- >>289
自分が使いやすい/使いたいように作れば、それで良いと思うよ
- 296 名前:nobodyさん mailto:sage [04/10/30 02:26:46 ID:???]
- C++でCGI作ろうと思ったけど全然ライブラリが揃って無くて駄目だね。
Perlならcpanでサクサク拾えるのに。
- 297 名前:nobodyさん mailto:sage [04/11/02 10:30:42 ID:???]
- >>296
Cのライブラリを使えばいいじゃん
- 298 名前:nobodyさん [04/11/30 12:32:26 ID:q4147YdE]
- レスポンスがあるかわかりませんが..
POSTで受け取った文字が化けるのでiconv使って変換をと思ったんですが iconv_t icv_hook; char *inp; char *outp; size_t ret_val; size_t in_buf_left; memset(out_buf, 0, BUFSIZ); in_buf_left = strlen(in_buf); out_buf_left = BUFSIZ; ret_val = iconv(icv_hook, inp, in_buf_left, outp, out_buf_left); 警告: 互換性のないポインタ型からの引数 2 個の `iconv' を渡しますです 警告: 引数 3 個の `iconv' を渡しますにより、キャストなしで整数からポインタを作りました 警告: 互換性のないポインタ型からの引数 4 個の `iconv' を渡しますです 警告: 引数 5 個の `iconv' を渡しますにより、キャストなしで整数からポインタを作りました docs.sun.com/app/docs/doc/806-2802/6jc0bne4u?l=ja&a=view これの通りにしたのに どこがおかしいのでしょうか?
- 299 名前:nobodyさん mailto:a [04/11/30 13:42:39 ID:???]
- >>298
char *とchar **は違う。
- 300 名前:nobodyさん [04/11/30 19:18:07 ID:q4147YdE]
- どうもありがとうございます。
char *とchar **は違うとはわかりますが、ではどこをどう直せばよいのでしょうか? 宣言時にchar**とやったり、キャストを入れてみてもやはり警告が出ます。 コンパイルは通りますが、実行時に iconv()を呼ぶときに必ず 「セグメンテーション違反です のエラーが出ます
- 301 名前:nobodyさん mailto:a [04/11/30 19:56:28 ID:???]
- >>300
const char *inp; char *outp; (中略) ret_val = iconv(icv_hook, &inp, in_buf_left, &outp, out_buf_left);
- 302 名前:nobodyさん mailto:sage [04/11/30 20:09:48 ID:???]
- >>301
char *inp; char *outp; ret_val = iconv(icv_hook, &inp, &in_buf_left, &outp, &out_buf_left); なぜか指示どうりではだめでしたがこうやったら正しく実行できたので とりあえず報告します。
- 303 名前:nobodyさん mailto:sage [04/11/30 20:20:55 ID:???]
- >>302
初めて使う関数は、きっちりmanを見たほうがいいよ。 副作用のこともあるし。 www.linux.or.jp/JM/html/LDP_man-pages/man3/iconv.3.html これはLinuxのだけど。
- 304 名前:nobodyさん mailto:sage [04/12/03 15:18:44 ID:???]
- C/C++ CGIで、最初に1回だけユーザ認証をやって、
その後同一の実行ファイル上で、ログイン状態を維持する これを実現するための考え方と、参考になるソースを教えてください。
- 305 名前:nobodyさん mailto:sage [04/12/03 22:30:06 ID:???]
- >>304
同一の実行ファイル上ってのがよくわからない。 言葉通りに解釈すると、Cookieにそのファイルのpathを設定すればいいだけだけど。
- 306 名前:nobodyさん mailto:sage [04/12/04 00:34:37 ID:???]
- PHPのセッション管理のような仕組みを作っちゃえば楽なんだろうけど、作るのは楽じゃない。
- 307 名前:nobodyさん mailto:sage [04/12/05 06:35:51 ID:???]
- >>304
>>305に1票、もしオレがやるなら、やっぱ Cookie使う。 セッション管理より楽だし。 厳密性を求めるのは厳しいけど、ユーザ認証が目的なら、 同じブラウザを使ったかどうか分かる Cookieは充分有効な手段でしょ。
- 308 名前:nobodyさん [04/12/05 06:40:37 ID:4YEMHaP5]
- >>304
ソースくらい検索してほしいが、オレのブックマークにこんなのが入っていたので参考までに。 ttp://sometime.minidns.net/~ccgi/taggedstr.html
- 309 名前:nobodyさん mailto:sage [04/12/05 06:41:11 ID:???]
- sageるつもりだったがついうっかり・・・ OTL
- 310 名前:305 mailto:sage [04/12/05 10:05:05 ID:???]
- > C/C++ CGIで、最初に1回だけユーザ認証をやって、
> その後同一の実行ファイル上で、ログイン状態を維持する 通常、CGIプログラムはリクエスト毎に終了してしまうので、 プログラム内の変数にログイン状態のデータを維持する事は出来ない。 そこで、データの永続化。 具体的には、ファイル、データベース、共有メモリでもなんでもいいので、 CGIプログラムが終了してもデータが残るような媒体にデータを記録する事になる。 その際、Process IDやIP address等からユニークなIDを作成し、 このIDをキーとしてログイン状態などの情報を記録する。 同時に、このIDをセッションIDとしてブラウザのCookieに設定させることで、 認証を済ませたユーザかどうかを確認する。これがセッション管理。 一度認証を済ませたあとは、 ブラウザが送ってくるCookie(CGIの場合は環境変数などに設定される) のセッションIDと一致するキーのデータを引き出し、そのログイン状態を確認すれば良い。 >>306 簡単なセッション管理の実装で、 セッション毎に./session/$SESSION_ID$ ファイルを作成するとかはどうだろう。 >>307 >>305は、一応、セッション管理を前提に書いてました。 "同じ実行ファイルの上で"が同一URL上でという意味ならCookieのpath設定だけで済むかと思ったので。
- 311 名前:nobodyさん mailto: [04/12/05 11:23:18 ID:???]
- sometime.minidns.net/~ccgi/taggedstr.html
- 312 名前:nobodyさん mailto:sage [04/12/05 16:32:23 ID:???]
- 普通にクッキーデコーダクラス作ればいいだけの話じゃん。
おいらはurl_decodeクラスとそこからget,post,cookieの継承クラス作ったけど。 データ構造は自作二分木
- 313 名前:nobodyさん mailto:sage [04/12/05 17:12:51 ID:???]
- そういう手続き型のはモジュールでやったほうがいいと思われ
- 314 名前:nobodyさん mailto:sage [04/12/05 17:17:25 ID:???]
- >>313
そうか? ヘンテコな抽象化だなとは思うが、リクエストとかユーザステートみたいな 他の設計クラスとかち合わなきゃどうでもよくね。 クラス=メソッドってOOとしてはNGだけど、Cppなんだし。
- 315 名前:nobodyさん mailto:sage [04/12/05 17:28:03 ID:???]
- C++はオブジェクトをとるかデータ構造をとるかでよく迷わされる
Cでやることも考えるなら、そう迷うこともないけど
- 316 名前:nobodyさん mailto:sage [04/12/05 17:30:13 ID:???]
- おいおいLispスレが立ったぞ。ドンケツ脱出だな。
- 317 名前:nobodyさん mailto:sage [04/12/05 18:46:29 ID:???]
- >>316
ACLかよw そりゃ間違いなく脱出だが
- 318 名前:304 mailto:sage [04/12/07 09:58:50 ID:???]
- アドバイスありがとうございます。
色々試してみます。
- 319 名前:nobodyさん mailto:sage [04/12/25 01:16:54 ID:???]
- みんなUTFとか使ってる?
- 320 名前:nobodyさん mailto:sage [05/01/19 15:43:33 ID:???]
- ((void *)0)
- 321 名前:nobodyさん [05/01/21 13:43:21 ID:Z6ezIjZ/]
- ばかばかしい質問かもしれないんですが
bluequartz上でC/C++ cgiがどうして動かせなくて困ってます。 gcc バージョン 3.3.2 20031022 (Red Hat Linux 3.3.2-1) もちろんapacheは動いています Server version: Apache/2.0.51 コンパイルしたファイル(xxx.cgi)はコマンドラインからは実行できるのですが、 これをブラウザから見ようとすると、 「xxx.cgi ファイルを保存しますか?」 となってしまいます。 どこがおかしいのでしょうか 何か見落としているかも知れないので指摘いただきたいです
- 322 名前:nobodyさん mailto:sage [05/01/21 15:52:04 ID:???]
- >>321
content-typeが変なのになってるんじゃないでしょうか。
- 323 名前:321 mailto:sage [05/01/21 16:58:47 ID:???]
- 普通に
Content-type: text/html です。 テスト用に時刻表示するやつを作ってみましたが 以下のテキストを吐き出すだけです。 Content-type: text/html <html> Fri Jan 21 16:53:21 2005 </html> これもブラウザから見ようとすると やっぱりファイルを保存しますか?となってます
- 324 名前:nobodyさん mailto:sage [05/01/21 17:39:21 ID:???]
- >>323
保存したファイルの中身は?
- 325 名前:321 mailto:sage [05/01/21 18:10:27 ID:???]
- >>324
保存したファイルの中身を見てみましたが実行用のバイナリファイル そのものだと思います。 出力結果とかが保存されてるわけではない(と思う)です
- 326 名前:nobodyさん mailto:sage [05/01/21 18:44:53 ID:???]
- AddHandlerは?
|

|