C/C++ CGIスレッド
■ このスレッドは過去ログ倉庫に格納されています
>>458
javaは動き出しちゃえば(そこそこ)速いんだよね。メモリバカ食いするけど。
今時のハードだと安くてもメモリさえ積めば充分だし。
プラットフォームが確定してればCの方がパフォーマンス良いけど、WebProgって
求められる機能がアホみたいにコロコロ変わるから、Cは向いてないよなぁ。 こんな時代だからこそ C+++CGI なんだと思った Cばかりが速いとは限らない。
JITコンパイラの最適化能力と、GCの性能は一気に上がった。Javaも実際は一部JITで機械語にコンパイルしたり(いまだに完全インタプリタ言語だと思ってる人が数レス前にも)、メモリを予約するよう工夫されている。言語だけて決め付けるのは古い。
(しかしASP.NETの方がJavaわずかに全体的に速い。純MSの一部アセンブラ言語だから当然か。Win鯖限定)
CGIの起動の負荷もある。特に高負荷。
あと技術レベルとコスト。大したやつじゃないなら既存のC/C++をパパッとやって出来上がりだけど、さすがにネトゲの鯖プログラムをCでってのは勘弁してほしい。
JavaでStringを+で連結しまくる困ったちゃんもいるし、やっぱり言語を扱う人間のレベルの方が影響が大きいんじゃないか?
チラシの裏
某f〇2のアク解の鯖はOSからhttpdまで完全C++の自作らしい。どれだけさばけるのか気になる。 完全スクラッチを謳う鯖って大概NetBSDのカスタマイズだったりするからなぁ・・・ 求められる機能がアホみたいにコロコロ変わるって仕様が十分に練れてないだけじゃん。
普通はハードは減価償却終わるまで替えないから、Cバイナリでも十分。
jit使うならiccやgcc使うのと変わらんだろ。
しかもjitなら全ソース無いとjitの意味ないし。
JbossみたいなJ2EEのワークフレームがCにも欲しい。
完全スクラッチである必要は無いと思うが。
組み込み系なのか? C言語の依頼ならたまに来るけども(JavaとPHPがほとんどだが)、C++はほとんどない。なんでだろ? そもそもC++である必要が無い。
マカが絶賛するObjCも必要性無いからマカ以外使われないし。
Javaの客ならサンの高い鯖でも買ってくれで対応出来るだろうけど、phpだと下手にアクセス数増えると大変だよね。
小規模サイトのうちは平和だけど。Javaに移ってくれでハードごと交換してもらえるほど余裕無い場合がほとんどだし。 いつまでも C/C++ なんていってるから散漫になってだめなんだよ。
強い C++ 文化を作らなきゃ。 現状ではC++ほどトータルバランスに優れる言語はないと思う。
でもC++の言語ポテンシャルに気づくまでには情報の壁があるよね。
URLデコード処理なんかistringstream使えば死ぬほど単純なのに。
C++に必要なのはC視点から脱却した体系的な解説サイトだな。 C++に必要なのは移植性
Cと違ってコンパイラによって対応度が全然違うから、
g++で通るのに商用UNIXのコンパイラでコンパイルが通らなかったりしてうんこ。 質問です。
C++でCGIを書こうと思ってC++勉強してるんですが、
POST methodで受信した文字列をcinでもらったり、
出力をcoutで出したりするのはセキュリティの観点等から見て
適切でしょうか?
Cだとfgetsとかputs使ってたんで、何をやってるかよくわからない
cinとかcoutはちょっと怖いイメージが… >>471
せっかく C++ 使うのなら,Apache のモジュールにした方がいいよ. >>472
標準入出力をモジュールを介して行うということでしょうか?
>>473
そうですね。もう少しC++に慣れたら読んでみようと思います。 そもそもアパッチも自分で作ったほうがいいよ。
アパッチって変なことやり過ぎで変になってるし。mod_rewhiteのところとか。
商用UNIXのコンパイラでコンパイルが通る様に組めないおまいがどう見てもウンコ。
素人なのか?
C++なんてイラネ。ANSI Cこそ最強ですよ。 apacheを自分で作る??
httpdじゃなくて? rewrite のスペルもまともに書けない人間はプログラミング以前に、
中学校レベルの英語から人生やり直した方がいいと思うゾ。 どうって言われてもな。
オブジェクトに要素渡して最後にoutputさせるだけだが。 >>478
俺はPerlのHTML::TemplateやPHPのSmartyみたいなヤツで出力してる。
C/C++でソース中でレイアウトいじるのはどうなのよ?
いちいちコンパイルしなきゃならんのはめんどくさくね?
でもソース中に埋め込んでないと遅いのでCにした意味がなくなるけどな。
コンパイル面倒ならphpとかperlあたりで作った方が楽だし。 やっぱC/C++な人たちは速度に厳しいのかな。
俺はテンプレートくらいって考えちゃうよ。
でもそこまで考えるとやっぱりCGIって枠を抜けたくなってくる。
あーだからみんなCでCGI書かないのか。
80番つかんで自前でリクエスト処理が早いよね。
フロントエンドにアパッチ置いて、ヲレモジュールで繋いだ方が便利だけど。
javaのj2eeのC的アプローチだが。 printfでlocationを実行させようとしたんですが、単にlocation文が出力されるだけなんですが・・・
制御文と認識させるためには、お呪い前処理が必要なんでしょうか? - locationを実行って何
- 「単に出力されるだけ」ってどこに何が出るの
- 制御文って何
- お呪い前処理って何
総じて意味不明
何をやったのかも何をやりたいのかも伝わってこない CGIスレだし、Locationでリダイレクトさせたかったんじゃね?
でも別の場所でprintfしてる Content-type: text/html が残ってるせいで文字が表示されてるだけとか まあつまりStatus:302ってこったろうな。
302時にhtmlを返すこと自体は普通だし。確か。 ttp://labs.preferred.jp/azarac/ むしろ調べて報告してくれ。
来週までの宿題ってことにする。
再発明でも、いいよ。
まともに業務に使えそうな機能が欲しい。 CかC++で作られたものなら。
それ以外のphpとかperlとかjavaとかなら他へ。 そのurlの最後の三文字を声に出して読んでください 拡張子でファイルの種類を判別できるなんて、あなたは超能力者ですか? 権利関係のとこ見れば良いじゃないんか?
あれはただ表示してるだけですか そういや拡張子の無いCGIは
.htaccessで
<Files test-cgi>
ForceType cgi-script
</Files>
ってやっているけど、これ以外の方法で設定ある? >>491
既にあるものを新しく作ったかのように発表するのは、
プログラマとしてダサイ、
研究者として最低、
会社としては?
それとは別にpreferredのコードがazaracと同等だとしたらダメすぎだろ。
コアは良いのにもったいない 既にあるものがベストでない場合も有る訳だし。
新しく作った方が良ければ評価はされると思う。
プログラマでも研究者でも先駆者だけが評価されるのは視野が狭い証。
コアは再利用するけど、もっと使いやすくするのがオープンソースの醍醐味。 >>503
>新しく作った方が良ければ評価はされると思う。
そりゃそうだけどそれを示してないよね。そんな論文どこにだしてもrejectされるよ。
ちょっと>>492にあるやつ見た感じだと示せそうもなさそうだけど。
あえて言えば日本語ドキュメントがあることだけど、それじゃぁね。
まぁ今後に期待。
どこのスレで聞いていいのかわかんないので、ここで聞きます。
カウンターCGIを探しています。(※フリーで配布されているもの)
絶対条件は、GIFアニ画像を使えるカウンターが希望です。
kentのは連結ライブラリを使用するやつしかありませんでした。
他にもいろいろ探しましたが、これといったものが見つかりませんでした。
キリバン機能はあっても無くてもヨシの方向で。
また、ここじゃなくてこっちのスレで聞けやー
っていうのがありましたらそのスレ教えてください。 誰かエンドレスバトルのスクリプトうpしてくれる神はいませんか? VCで作ったCGIで、C:\WINDOWS直下に置いてあるINIファイルの設定を取得しようとすると取ってこれないのという現象が発生します
他のディレクトリを指定すると正常に動作するのですが、アクセス権限の設定とか必要なのでしょうか? >アクセス権限の設定とか
わかってて何故確かめない IIS、システムフォルダとも確認しました
他に確認する所ありましたっけ?
別のサーバーはちゃんと動いてるんだけどなー >>509
エラーコードやらメッセージやら確認した?
Cから、INIファイル自体読めるかどうかの確認ぐらいしたら?
オラクルとのやり取りはProCってのがあるみたいだけど、HTML生成と、HTTP周りとGET/POSTやセッション管理のライブラリ欲しい。orz C言語用のCGIライブラリで有名なものは何ですか?
クエリやHTTPヘッダを解析する程度の、簡単なもので構わないのですが… 質問させてください。
C言語の勉強をしたいので、C言語でCGIを作ろうと思ったのですが
CGIのほとんどはPerlで組まれてるようで、そのことを考えたら
C言語でCGIを作るのとPerlで作るのではどのくらい作業量が違うのかが気になりました。
CでCGIを作るのとPerlで作るのでは、どのくらい作業量が違うのでしょうか?
また、Perlでないと作るのが難しい処理がある、といったことはあるのでしょうか? 一応付け加えさせて頂くと
C言語は基礎的なことは一通り理解しています。
といっても、まだまだ腕に自身がなく
今後仕事で使うことになるので、あえてPerlではなく
C言語で作りたいと思いました。 一応付け加えさせて頂くと
C言語は基礎的なことは一通り理解しています。
といっても、まだまだ腕に自身がなく
今後仕事で使うことになるので、あえてPerlではなく
C言語で作りたいと思いました。 >>515
PerlはもともとCGI用に作られた言語じゃなくて、文字列処理に強いから適してたってだけ。
正規表現系のライブラリさえ用意できればCでもさほど手間は変わらない。
っていうか本当にCを理解してればこんな質問自体無意味だと気づきそうなもんだが。 >>519
ありがとうございます。
文字列処理に強いからCGIで使いやすいということだったのですね。
Cでがんばってみようと思います。 初心者ながらも悪戦苦闘しWEB作成してます。
掲示板を動かすのはCGIによるものだというのがわかるのですがどうも掲示板の設置方法がわかりません。
掲示板はCGIパール言語ではじめから組み込まれたものなのですか?それともHTMLである程度(HPのヘッダー部分や上のロゴとか)
作ってから掲示板としてはじめたい行からCGIでプログラムを書き始めるものなのでしょうか?
それとも掲示板のページは最初からCGIでヘッダーやロゴの部分もCGIパール言語で書き始める、とういうものなのですか?
このばあい、ロゴとかを前のHPから来るレイアウトでCGIにできる方法など簡単に図示、説明してあるWEBなどないでしょうか?
ど素人の質問ですがどなたかご回答いただけましたら幸いにございます。 >>522
そのレベルだと何説明されても理解できないだろうから
自分で設置しようとか思わずにまずレンタルの掲示板
借りたほうがいいと思うよ
あとスレ違い >>522
ロゴっていうのがよくわからないが
>それともHTMLである程度(HPのヘッダー部分や上のロゴとか)
>作ってから掲示板としてはじめたい行からCGIでプログラムを書き始めるものなのでしょうか?
この辺はPHPなら出来る
>それとも掲示板のページは最初からCGIでヘッダーやロゴの部分もCGIパール言語で書き始める、とういうものなのですか?
Perlはそう
で、ここは C/C++ のスレです >>496
画面下に
ずるぽんあぷろだ + レッツ PHP!
となっているから
phpじゃない? Cで作ったCGIが正常に終了しないで
プロセスとして残ってしまったら
どうやって終了させればいいんですか?
cgiだとhttpdから呼ばれてるから再起動しか無いね。 独学でC++を使ってcgiを学んでます。
How to Program in C++って本で
「ユーザーが一度注文したアイテムを
ショッピング・カートから消せるようにviewcart.cgiを変更しなさい」
って問題があるんですけど、流れ的にはどうやればいいんですか?
viewcart.cgiは元々ユーザーが注文したアイテムを表示するだけのcgiです。
各アイテムにボタンは追加しました。
ただ、shopping.cgiからコピーしてきただけなので
押すとアイテムの数が一つずつ増えていきます。_| ̄|○
クッキーをostreamで開いて直接消してやらないとダメですか?
でも、途中にあるデータを消すのって大変ですよね…
後ろのを全部コピーしておいてまたペーストとか…。
一般的にはこういうのはどうするんですか?
ヒントをください。そしたら、自分でやってみます。 ↓ソース(viewcart.cpp)です:
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.cgi?mode=thr&no=3844
55. viewcart.cpp C/C++ CGIスレッド - 2007/05/07(Mon) 01:04 No.3942
3942.txt お借りします
いや、ていうかカートの中身をcookieに持つこと自体がまずありえない
まずセッションの使い方を学ぶべし >>537
いや、別に実用するわけじゃないんで
「やっつけ」でカートの中身をcookieに持ってていいんですけど。
(client.txtなんてパスワード暗号化なしですしw)
cookieのいじり方も知っててのレスですよね?
cookieのデータの削除の方法を教えてください。
この本には追加する方法しか書いてないんですよ…。
さっきから検索してるけど全然そういうサイトが見つかりません…。 ちなみにセッション管理はPHPで少し勉強しました。
この本の他の問題は全部解いたんですよ。
あとはこれだけなんでどうしても終わらせたいんです。 削除つーか上書きすればいいだけの話なんだが。
あと前提があるならちゃんと最初に書こうな。お互い二度手間だ。 「cookie 削除」でググれば速攻で方法見つかるやん >>540
一つの問題にしては時間がかかりすぎたんでもう諦めました。
本に載ってないことをやらそうとするのが悪い。w
ご協力ありがとうございました。 >>543
速攻ですな。w
いやね、キーを検索して空白やらマーカーやらで上書きまではやっても
削除にまでは至らなかったんですわ。
ちなみに自分は30歳超えてます。wwwwwwwwww 君がやってるのはプログラミングじゃなくてただのテキストコピー作業だ >>545
その通り!異論なし!w
ま、人間何事もコピーから始まるんですよ。
自分は終わりもコピーですが。 削除ってリンクに削除したクッキのリンクを貼ればおk。
EUCからUTF-8などに変換できる関数が掲載されているサイト教えて 初めてのCGIをCで作るってのは無茶だよねー。
PerlかPHPかで練習してからじゃないと、
ちょっとした掲示板作るのにすら1ヶ月以上はかかるんじゃないかな。
でもアクセスが集中する大規模サイトは、
Cで書かないとサーバ負荷が高くなりすぎて持たない。
なので、yahooとかもCで書いてる。
そしてCで書く人は、本格的に仕事で書いてる人が多いから>>451になり、
このスレも伸びない。 >>554
Cで書いたって、CGIとして使うなら、一般的にmod_perl使うよりも遅くなる。
速さを追求するためにCを使うんだったら、apacheのmodule書いて、自分で
リクエストを捌くに限る。
C/CGIって、余程特殊な場合(Cしか出来ないとか、ソースを渡したくないとか)
を除いて、メリット無いのよね。 >>555
2chのような掲示板の場合は確かにそうだけど、
いろいろ複雑な処理をする大規模サイトになってくると、結局C最強。
前に管理系CGIでボタンを押すと、最新のデータをもとに
サイト内のHTMLを更新するシステムを作ったんだが、
HTMLの数が数百レベルになって、
PHPやPerlだと数分待っても処理が終わらないということに。
Cで作り直してチューニングしたら、わずか数秒。
最近はWebアプリにいろんなことをさせようとしてるから、
ますますWebアプリの処理速度が重要になってくると思うな。 単にバグってたんじゃないのかw
Perlで毎日400ファイル更新してるけど2秒ぐらいだぞ @Pentium4 >>557
複雑なサイトだから、あちこちで多重ループをかける必要があったり、
レコード数がかなり多かったり。
できるだけ多重ループにならないように工夫もしたんだが、複雑すぎて無理…。 組み方が下手なだけでした。本当にありがとうございました。 ■ このスレッドは過去ログ倉庫に格納されています