もう15時か、
2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50 [PR]萌え猫写真館が復活。[PR]  

C/C++ CGIスレッド

637 :nobodyさん:2007/12/20(木) 18:02:10 ID:yjctAQBa
C++ で CGI というときに一番の難関は文字コードだと思うんだが
そういう危機感がこのスレにあまりないのは
やっぱり掲示板とかCMS級のユーザーフレンドリ階層なアプリを誰もC++らないからなのか…

JIS, SJIS, EUCJP, UTF7, UTF8, UTF16, UTF32 と改行コードまで自動判別しつつ
相互変化できるクラスを作ろうとしたら死にかけた

638 :nobodyさん:2007/12/20(木) 18:58:34 ID:???
babel使ったからそんなもんに苦労しなかったな。
他にもいろいろあるでしょ?


639 :nobodyさん:2007/12/20(木) 19:10:00 ID:???
Gaucheのソースが文字コード判定は優秀らしい。
それでもある程度バイト数がないと難しいだろうけど。

できればcharset指定とかを認識して、判断するのが正しいけど、
Webブラウザから渡されるのはcharset指定とかが一切ないからなー。
SJISかUTF-8のどっちを渡されたかは、予め決めておくか、
Gaucheのを使って判定するしかない予感。

変換は普通にiconv使ってる。

640 :nobodyさん:2007/12/20(木) 19:20:22 ID:???
判別用文字を仕込んどくんじゃないの?


641 :nobodyさん:2007/12/23(日) 12:00:21 ID:???
>>637
文字コードなんて問題にしたことは無い。
何もかもUTF-8で済ますように事前にお膳立てをするから。

642 :nobodyさん:2007/12/23(日) 20:42:35 ID:???
携帯の絵文字で困ったことになる

643 :nobodyさん:2007/12/25(火) 14:44:19 ID:???
そういや絵文字の範囲を丸々シフトしてiconvを騙してるフィルタのコードを見たことあるな。
あれ、C+iconvじゃなくてjavaだったかな。


644 :nobodyさん:2007/12/25(火) 17:02:56 ID:???
sendmailer は UTF-7 必須

645 :nobodyさん:2008/01/22(火) 12:04:42 ID:???
FileUploadのC/C++用ライブラリを探しています。
どなたかご存じないでしょうか?

646 :nobodyさん:2008/01/22(火) 13:08:58 ID:???
サーバから見て、アップロードしたいのか、ダウンロードしたいのかどっち?

647 :nobodyさん:2008/01/22(火) 19:09:37 ID:???
クライアントがアップロードしたものをサーバで受け取る際のHTTPプロトコル(RFC1867)
を解析するライブラリが欲しいです。
JavaでいうとCommons FileUploadのような

648 :645:2008/01/22(火) 19:19:44 ID:???
>>647 = >>645 です。_(__)_

649 :nobodyさん:2008/01/23(水) 13:31:01 ID:???
>>632の中から好きなの選べ

650 :nobodyさん:2008/01/28(月) 13:56:18 ID:???
ちょっとスレチっぽいが
cgiをコマンドラインから直接起動したいんだけど
POSTやGETで渡す引数を模擬するにはどうしたらいい?

651 :nobodyさん:2008/01/28(月) 14:39:15 ID:???
POSTなら標準入力にぶち込むだけでいい

652 :nobodyさん:2008/01/28(月) 14:57:11 ID:???
>>651
REQUEST_METHODとかCONTENT_TYPEとかCONTENT_LENGTHとかの
環境変数も設定する必要があるだろ。

653 :nobodyさん:2008/01/28(月) 15:25:48 ID:???
>>650
つ RFC3875


654 :nobodyさん:2008/01/31(木) 15:15:22 ID:4cRt7TvD
スレ違いかもしれないのですが
成分分析のフリーCGIをどなたかご存じないですか?



655 :nobodyさん:2008/02/03(日) 05:14:18 ID:???
expatの使いかたがわからん
サンプルソースがおいてあるサイトわかる人いる?

656 :nobodyさん:2008/02/04(月) 10:06:40 ID:???
本家のリンク先にあるチュートリアルとソースディストリビューション中のexampleで
とりあえず使うには十分じゃない?


657 :nobodyさん:2008/02/05(火) 13:31:05 ID:???
perlのクックブック(オライリー)を参考にした。

658 :nobodyさん:2008/02/12(火) 10:17:26 ID:4A4yMdyj
レンサバ使ってて、C言語可なんですけど

OSはLINUX系としか教えてくれない。
シェルは使わせてもらえない。
自前のPCでコンパイルして実行形式をUPしろ。
リンクするときにstaticにしないとダメよ。

としか情報が貰えません。
linuxの実行形式ってカーネルやディストリビューション違っても
互換あるんですかね?


659 :nobodyさん:2008/02/12(火) 11:20:20 ID:???
それはC言語使用可能とは言わないだろう。


ともかく、作ったバイナリがサーバで動くかどうかはバイナリの形式とか、
libc他のAPI互換性があるかどうかとか、CPUのアーキテクチャとかによる。

ま、フツーに最近のi386ディストリでgccを使ってスタティックリンクな
バイナリを作ればたいがい動くんじゃないの。


660 :658:2008/02/12(火) 12:14:03 ID:???
>それはC言語使用可能とは言わないだろう。

ボクもそう思うんですが、C言語使用可能と宣伝してたんです。
isleというそれなりに大きいレンサバ屋です。

cpuはxeonだと自慢してたので386系なのは確実なんですが…


661 :658:2008/02/12(火) 12:17:32 ID:???
ちなみにこれがisleのFAQ「C言語は利用できますか」の回答です。

C言語で作成されたスクリプトのご利用も可能ですが、
telnet/sshはご利用いただけないため、iクラスタにて利用している
Linux系のOSを利用している端末にてコンパイル後に
アップロードしていただく作業が必要となります。
他の端末にてコンパイルする場合には、ライブラリを共有できないため、
static オプションつけたコンパイルを行ってください。

662 :nobodyさん:2008/02/12(火) 16:51:07 ID:???
PerlのCGIでgccを叩いてみたらどう?
パスが通っていることと、負荷の制限が軽いことが条件だけど。
昔のXREAではそうしていた。
今からVirtual PCという手もある。

663 :658:2008/02/12(火) 21:59:48 ID:???
>662
telnet.cgiが使えました。

uname -a でfedora3だということもわかりました。
デバッグ用の環境をfedora3で作ります。

みなさんありがとうございました。

664 :nobodyさん:2008/02/23(土) 09:06:34 ID:???
フレーム内の監視を行いたいのですが、これにはどういう仕掛けを作れば良いんでしょうか。
インフレームの内部を監視して、表示された中身をソースかキャプチャで保存するCGIを作りたいのです。

665 :nobodyさん:2008/02/29(金) 11:28:26 ID:???
>>664
無理ぽ。

666 :nobodyさん:2008/04/19(土) 14:56:01 ID:TKfwdaTT
C++でClearSilver使おうと思ったんですが、素でC++用のAPIが入ってないのでClearSilver++?を使おうと思ったら
http://biology.nmsu.edu/software/clearsilver++/
調べる限りここらしいんですが、繋がりません。
ミラーとか無いんですかね?

667 :nobodyさん:2008/04/20(日) 15:29:47 ID:???
もう復旧した様子

668 :のし図:2008/04/23(水) 18:51:13 ID:9jK7Jl1u
スクリプトの事で質問があります。
http://mk-board.net/index.cgi

このスクリプトを抜いて自慢している人がいて、ソースを晒していた人がいるのですが
 どうやってこの
http://mk-board.net/index.cgi
のスクリプトを抜いているかが気になります。
どうやるのですか?
教えて下さい

669 :nobodyさん:2008/04/24(木) 09:33:08 ID:???
ハッカーの仕業!?

670 :nobodyさん:2008/04/27(日) 17:14:11 ID:xxSAA3Zr
最近はやりのIISの問題を突いてるんじゃないの。


671 :nobodyさん:2008/05/01(木) 04:51:52 ID:???
不正アクセス禁止法

672 :nobodyさん:2008/05/21(水) 02:58:51 ID:H73mNdaA
不正アクセス禁止法

673 :nobodyさん:2008/05/21(水) 04:31:31 ID:???
668が嘘をついているという可能性が高い
気がしないでもない

674 :nobodyさん:2008/07/21(月) 11:22:35 ID:p8NBqSCe
ClearSilver++って落とせる?ftp繋がらないんだけど・・・

675 :nobodyさん:2008/07/24(木) 11:50:25 ID:???
>>666-667

676 :nobodyさん:2008/07/26(土) 08:58:55 ID:???
>>675
見えてるけど答えになってないよ。
いつ何度やっても繋がらないんだけど?

677 :nobodyさん:2008/07/26(土) 09:21:58 ID:???
C++ CGI さいきょー

678 :nobodyさん:2008/07/30(水) 18:56:54 ID:???
数年前にCで掲示板作ろうとしたが、文字コードであっけなく挫折
最近そのこと思い出してふらっと調べたら、VSで簡単にunicode扱えるようになってるのな
ちょいちょい思い出しながら作ってみるかな

679 :nobodyさん:2008/09/06(土) 21:33:24 ID:Z1+deiQP
なんだかんだ奥が深いよなぁ

680 :nobodyさん:2008/09/18(木) 15:01:14 ID:/9HVp0RB
CGIでエラーがあった場合エラーページにリダイレクトしてるんですが、
リダイレクトする前のエラー内容のエラーロギング(fprintf(stder,))が
出力されません。(何も出力されない)

syslogを使うことや他の方法も考えたのですが、とりあえずなぜ
エラー出力がでないか調べています。
なにか解決策あれば教えてください。

・apacheはver2.0です
・リダイレクトしない場合は、ちゃんとエラー出力される
・リダイレクトはLocation :〜の絶対パス使用(相対パスによる内部リダイレクトだとエラー出力された)
・他の言語(PHP)で試すと、リダイレクト前のはちゃんと出力される



681 :nobodyさん:2008/09/18(木) 22:43:17 ID:???
$data = "MAILADDR=<入力したメールアドレス>\n PASSWORD=<入力したPW>\n";
if (open(FH, ">data.bat")) {
print FH $data;
close(FH);

↑CGIを使用しページを見ているユーザーに入力を求め、<入力したメールアドレス><入力したPW>に代入?させてファイルに書き出したいのですがいい方法ってありますか?

682 :nobodyさん:2008/09/18(木) 22:48:21 ID:???
ここはCあるいはC++用のスレなのでperlの質問はスレ違いです。

Perlコーディング初心者質問スレ Part 58
http://pc11.2ch.net/test/read.cgi/php/1218030872/

683 :nobodyさん:2008/09/24(水) 13:34:55 ID:???
>>680 fflushはしたの?

684 :nobodyさん:2008/10/09(木) 01:47:06 ID:???
>>683
fflushもしてみましたが、ダメでした。
何が原因なんだろう。

685 :nobodyさん:2008/10/09(木) 15:17:08 ID:???
Location: 受信と同時に接続が切られて、そんでmod_cgiからシグナルが飛んでるとか?
でもヘッダで指定したサイズまでは読むだろうしなぁ。

デバッガをアタッチして、なんで死んでるか見てみたら。


686 :nobodyさん:2008/10/11(土) 03:41:33 ID:???
fprintfとかCライブラリではなくシステムコール直に叩いてみて

687 :nobodyさん:2008/10/15(水) 17:54:06 ID:???
stdoutとstderrは親経由で表示とか、ロギングされてるだろうから、
接続が切られると即捨てられる運命にあるのでは?

いや、Location: 受信と同時に接続を切るようなクライアントがあるのかどうかしらんけど。
サイズを指定すればそのバイト数までは読むようになるのかも。


688 :684:2008/10/16(木) 00:40:29 ID:???
>686
exec系は一通りwaitしたりしつつ試してみましたが、ダメでした。
fflushなりprintなりは終わっているはずなんですが。。。

>686,687
Location時にもContent-lenghtをつける、ということでしょうか?
その場合って、stderrの出力分を指定?でしょうか。




ちなみに、複数台のサーバが全部そういう状態で、割と困ってます。。

148 KB [ 2ちゃんねる 3億PV/日をささえる レンタルサーバー \877/2TB/100Mbps]

取りに行ったけどなかった。次は一時間後に取りに行くです。
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :


read.cgi ver 05.0.7.8 2008/09/25 アクチョン仮面 ★
FOX ★ DSO(Dynamic Shared Object)