bbs.cgi開発【WebProg板】
: nobodyさん [] 02/04/19 08:10:20PTEIcN ttp://qb.2ch.net/test/read.cgi/jikken/1017071166/l50 2ちゃんねるの、bbs.cgiが、現在住民の手により作られているようです。 WebProg板でも、改良に役立つように、協力しませんか? : nobodyさん [sage] 03/05/06 09:35ID:??? =""とかけばよいものを、="\0"と書くのがわからない。つーか静的なんだから自動的に0に初期化されるね。 staticのついていない関数の宣言はヘッダーファイルでした方がいいよ。 getenvがNULLを返さないかどうか監視しないと、strcmp等で悲惨な結果を生むことがあるだろう。例え(環境変数が)定義されていないはずがないと思っても。 もしもデコード対象の文字列が%で終わっていたらhex_packでまずいことになるかもね。hex_packでもきちんと文字列をチェックするか、decodeで2バイトstrncpyしてstrtolするといいよ。 mallocの戻り値をチェックしているところもあればしていないところも・・・ ところで、なんで*.hファイル(ヘッダーファイルだよね?)で関数の定義をしているの?(^_^;) 書き込み用のフォームを用意していないからでしょ。直接bbs.cgiにアクセスすればそりゃあそのエラーが出るよ。 あとはPOSTじゃなくて小文字でpostだったりすると(そこは非標準関数のstrcasecmpを使えばうまくゆくね)。 コンソールから起動すれば多分Segmentation Faultが出るよ(理由は上述)。 : nobodyさん [] 03/05/06 11:12:ODhBfC+Q SETTING.TXTが2chとは違うようだけど。 : ◆garnetGnNk [] 03/05/06 11:17:VK0iAUmq >88 突っ込み多謝ですm(_ _)m >ところで、なんで*.hファイル(ヘッダーファイルだよね?)で関数の定義をしているの?(^_^;) 他のコードを書くのに便利そうな関数は別ファイルにしようかなぁと。 それなら*.cにしる!ってことなんですけれども^^; : ◆garnetGnNk [] 03/05/06 11:20:VK0iAUmq >89 実験室仕様です。 2chに合わせるにはbbs.hを書き換えればいいと思います。 若干(でもないけど)テンポラリファイルの仕様も違うけど、 多分大丈夫^^; : nobodyさん [] 03/05/06 13:26:ODhBfC+Q 書き換えるのがめんどいのでSETTING.TXTもアップしてけろ : nobodyさん [♪] 03/05/06 13:27ID:??? SETTINT.TXTをパースする仕組みがないのでは。 : ◆garnetGnNk [] 03/05/06 14:00:VK0iAUmq 更新したー。 88さんの指摘と、ID生成部分の修正、DATファイルの書き込み判定を追加。 >92 ttp://http://www90.sakura.ne.jp/~hoehoe/temp/kigaru/SETTING.TXT bbs.hの書き換えは俺も面倒い^^; >93 文字列を分割する処理だよね?<パース これのことではない? value = split( key, '=' ); split( value, '\n' ); : nobodyさん [sage] 03/05/06 21:29ID:??? (・∀・)ニヤニヤ : nobodyさん [] 03/05/17 23:03:KafpXCdl いちお貼っとく ■ 新しいサーバで read.cgi が正しく動かない問題。 ttp://qb.2ch.net/test/read.cgi/operate/1047840578/ bbs.cgi 再開発プロジェクト ttp://qb.2ch.net/test/read.cgi/operate/1053067870/ : ◆dq7M./4Uw. [sage] 03/05/18 01:04ID:??? 男爵Cも書けるのか… まぁそれはいいとしておいらはCはほとんど書けないから出番なしかなー。 : 山崎渉 [(^^)] 03/05/22 02:01ID:??? ━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━― : 山崎渉 [(^^)] 03/05/28 17:20ID:??? ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉 : コナン ◆Hj.s1.SYl2 [sage] 03/06/01 18:47ID:??? 今だ!100ゲットォォォォ!!  ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ (´´ ∧∧ ) (´⌒(´ ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡  ̄ ̄ (´⌒(´⌒;; : 4 ◆Vqdc2LXgwQ [sage] 03/07/05 09:28ID:??? ワラタ ところで話変わるけど、携帯ゲーム機"プレイステーションポータブル(PSP) このPSPは、新規格UMD(ユニバーサルメディアディスク)というディスクを利用しており、そのサイズは直径6cmととても小さい(CDの半分程度)。 容量は1.8GBとなっている。 画面は4.5インチのTFT液晶で、480px x 272px(16:9)。MPEG4の再生やポリゴンも表示可能。外部端子として、USB2.0とメモリースティックコネクタが用意されているという。 この際、スク・エニもGBAからPSPに乗り換えたらどうでしょう。スク・エニの場合、PSPの方が実力を出しやすいような気がするんですが。 任天堂が携帯ゲーム機で圧倒的なシェアをもってるなら、スク・エニがそれを崩してみるのもおもしろいですし。かつて、PS人気の引き金となったFF7のように。 突然こんな事いいだしてすまそ・・ GBAと比べてみてどうなんでしょうか?(シェアのことは抜きで) : 山崎 渉 [(^^)] 03/07/15 11:14ID:??? __∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄ : 山崎 渉 [(^^)sage] 03/08/02 02:37ID:??? ∧_∧ ( ^^ )< ぬるぽ(^^) : ぼるじょあ ◆ySd1dMH5Gk [(^^)] 03/08/02 05:19ID:??? ∧_∧ ∧_∧ ピュ.ー ( ・3・) ( ^^ ) <これからも僕たちを応援して下さいね(^^)。 =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕 = ◎――――――◎ 山崎渉&ぼるじょあ : 山崎 渉 [(^^)] 03/08/15 23:00ID:??? (⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン : ゆうゆう ◆garnetGnNk [sage] 03/09/24 22:04ID:??? 10月過ぎて暇だったら続きを頑張ってみようと思う。 Makefileも作らないと。 : nobodyさん [] 03/09/25 23:51:OzoDTLwU 初めてPerl、CGIの勉強をしようと思うのですが、 皆様がこの本は良いと思ったのを、教えては 頂けないでしょうか。お願いします。 : nobodyさん [sage] 03/09/27 02:01ID:??? >107 スレ違い。 : nobodyさん [sage] 03/11/04 20:03ID:??? PHP使って、bzip2圧縮で転送量削減とかできないの? : nobodyさん [sage] 03/11/06 03:26ID:??? ガンバレ。 ところで、bzip2ってブラウザ対応してたっけ…? : ◆Bf99mSIZZY [sage] 03/11/07 21:04ID:??? しんどいわぁ。 ttp://http://www.h4.dion.ne.jp/~sizzy99m/toybox/ch031107.tar.gz : ◆.CzKQna1OU [sage] 03/11/14 16:59ID:??? ttp://2chp.net/ 来てください。 : nobodyさん [] 03/11/14 17:00:0jzATOs4 age : nobodyさん [] 03/11/14 17:00:0jzATOs4 age : nobodyさん [] 03/11/14 20:23:oxeSKhMt 一つ提案 ・広告対策/スクリプト荒らし対策もbbs.cgiに組み込んで欲しい ブラックリストを作って該当する物は排除といった感じで : nobodyさん [sage] 03/11/14 23:45ID:??? 今ごろ何を言ってるんだか : ◆Bf99mSIZZY [sage] 03/11/16 18:15ID:??? こんなもんで… ttp://http://www.h4.dion.ne.jp/~sizzy99m/toybox/ch031116.tar.gz : ◆garnetGnNk [sage] 03/12/15 20:01ID:??? うひょ。 すごいなぁ。 : ◆Bf99mSIZZY [sage] 03/12/18 20:45ID:??? ミススペルとか、怪しいエイゴは見逃してね。。 : ◆garnetGnNk [sage] 03/12/24 01:39ID:??? <a : ◆garnetGnNk [sage] 03/12/24 01:39ID:??? おみとろんのばか・・・・ ttp://www111.sakura.ne.jp/~as/box/bbs.zip がんがって書き直してみた。 といっても、最小限の機能な上、限りなく怪しいソースだけど・・・。 : nobodyさん [] 03/12/26 16:33:cCj+LlKE bbs.cgi再開発プロジェクト2 ttp://qb3.2ch.net/test/read.cgi/operate/1069144193/ いろいろ発注もあり。 : ◆Bf99mSIZZY [sage] 03/12/26 20:00ID:??? (σ・∀・)σゲッツ : ◆garnetGnNk [sage] 03/12/27 23:42ID:??? 限りなく怪しいソース第二弾。 ttp://www111.sakura.ne.jp/~as/src/bbs.zip ・トリップ、fusianasan、名無しさん に対応 ・デコード処理のバグ修正 ・Makefileのバグ修正 : ◆Bf99mSIZZY [sage] 04/01/01 03:10ID:??? あいかわらずきれいなソースだね。 ただ、ヘッダに変数を置くのは止めたほうがいいと思われ。 : nobodyさん [] 04/01/01 17:55:lAUuyD9W 言い方がキツイかもしれんがもう少しちゃんと組まないと利用者がとんでも ない被害をこうむるぞ。このままではたぶんコア吐きまくりになる。 バッファ・オーバーに対する緊張感が感じられない。 差し出がましいようだが製作中をチラっと紹介。 ttp://http://org.s38.xrea.com/bbs-mod.zip Apacheモジュール化を前提にしてるから回りくどい動作をしてるが 実用性を重視して設計してる。 現状はただのCGIでファイルでデータ保持してるがこれをApacheのメモリ 空間に置き換える。 そこそこの形にまとまれば軽くPerl版の100倍とかの速度になるんじゃないかな? : nobodyさん [sage] 04/01/01 20:11ID:??? くだらない煽りだと思われるかもしれないけど、もう少しCを勉強した方がいいよ。 : nobodyさん [sage] 04/01/01 20:13ID:??? はHDDがフォーマットされるぞ : nobodyさん [sage] 04/01/01 20:19ID:??? スーパーユーザーで動かすのか? : nobodyさん [] 04/01/01 20:28:lAUuyD9W つっこみナイス をApacheAPIに置き換える前に一応素のCGIとしても仕上げておこうと 思うが何か問題点があったら遠慮無しに叩いてもらえないだろうか。 : ◆Bf99mSIZZY [sage] 04/01/01 20:41ID:??? 結構うまく設計されてると思うけど。。 脆弱性があるなら、その部分を指摘してもらえるとありがたいと思うよ。 (ついでに私のもよろー。) ソース見たよ。 1Mのmallocって今時は普通? : nobodyさん [sage] 04/01/01 20:50ID:??? エンティティヘッダの区切りは \n じゃなくて \r\n にしろよ。 つかまだ完成度数%くらい?のものを叩けと言われてもなぁ… : nobodyさん [] 04/01/01 21:00:lAUuyD9W 細かい部分で自分で調べてもらうとして、 ・確保したメモリが確実に初期化されているという保証はあるのか? ・散在したリソースが整理して管理できてるか? ・冗長性の無い関数(strlenとかstrcat等)にそのままデータを入れていないか? っていう部分のポリシーが私の考え方と相違している。 危険性を多分に含んでいることは間違いない。 というより皆バラバラで作ってないで統合して分担できればいいんだが。 PM出現きのん : nobodyさん [] 04/01/01 21:02:lAUuyD9W 改行コードは処理系が吸収してくれるはずなんだが。 ちなみに私の環境はWin2k3+Cygwin+GCC3.3とLinux2.4+GCC3.3 : ◆Bf99mSIZZY [sage] 04/01/01 22:48ID:??? メモリの初期化はmemsetではだめなの? バッファオーバーフローを考えるなら、sprintfも危険ですよ。 strlenがだめなのは、ポインタにNULLが入っているかもしれないから? でもそれを言ったら、文字列操作系が全部だめって事になりそう。 : nobodyさん [] 04/01/01 23:03:lAUuyD9W データ型も保証されていた方がいいよね? stringまわりは手前できちんと例外処理しておけば済む事じゃない? サイニタイジングまわりをどうするかで思案中、、 regexでゴリっと正規表現使うかリクエスト・ボディの全バイトで ポインタ回してチェックするかどっちがいいだろう。 : nobodyさん [] 04/01/02 02:12:Sa3Xeut9 の後半は撤回。 トークン後にサニタイジングね。 : ◆Bf99mSIZZY [sage] 04/01/02 14:28ID:??? C++ですか? だとしたら、ちょっと期待してます。 # C++のApacheモジュールについて、よく知らないので。 : nobodyさん [] 04/01/02 15:24:Sa3Xeut9 素のApacheAPIのつもりだが、、 C++でApacheモジュール使う利点ってあるの? サニタイジング云々はとりあえずCGIとして機能する為に必要なだけで、、 ApacheモジュールにするならApacheAPIバリバリでお手軽に行くつもりだが。 CGIならSTLは重宝するが。 : ◆Bf99mSIZZY [sage] 04/01/02 17:41ID:??? string、例外処理というところでC++だと思ったのですが、違いましたか。 C++の標準stringあるだけでも、結構便利だと思いますけど。 それと、ap_escape_htmlは文字参照に対応していないので、 注意した方がいいですよ。 : nobodyさん [] 04/01/02 18:58:Sa3Xeut9 C++は楽な反面でコードがキモいしなぁ、、 必要に応じて自前で作るべき処理もあるかもしれないね。 それより基本構造に着目しないと作り直す意味があまりないような。 目的は軽量でメンテしやすい物に置き換える事だよね? : nobodyさん [sage] 04/01/03 05:49ID:??? キモい本7のくせに何を言ってやがる : nobodyさん [] 04/01/03 19:48:2DwnkFHA read.cgiで消費メモリを抑えたいんだが、 datを全部バッファせずに逐次でHTML出力しようとてる。 この時上部の100レス単位のリンクを入れるにはどうすればいいだろう。 やはり一度datを全部読んでその行数で調べるしかないのだろうか。 問題点はデータを全て読む前に何レスか分からないとリンクが作れない事。 なんかいい方法ないだろうか。 : ◆Bf99mSIZZY [sage] 04/01/03 21:16ID:??? できれば、このスレはsage進行で。 : nobodyさん [sage] 04/01/03 23:49ID:??? インデクスを作成しておけばいい。 : 143 [sage] 04/01/04 01:17ID:??? subject.txtを見に行くって事? それもいいかもしれないなぁ。 負荷とのトレードオフかもしれないけど。 パフォーマンスがテーマになるといろいろ難しいね : nobodyさん [sage] 04/01/04 01:17ID:??? うるさいよ本7 : nobodyさん [sage] 04/01/04 08:02ID:??? 現状のmmap方式で問題なかろう。 : ◆garnetGnNk [sage] 04/01/04 14:12ID:??? >125-127 突っ込み多謝。 1から出直してきます。 : nobodyさん [sage] 04/01/04 18:31ID:??? datファイルの各行の頭のファイル位置を 別のインデクスファイルに記録しておき、 必要に応じてそれを参照して、アクセスするって事でせう。 欠点はインデクスファイルが増える所と、 レス削除した時にそのファイルも操作が必要という所。 : 143@mod_bbs [sage] 04/01/04 18:49ID:??? なるほど。貴重な意見ありがとうね。 のアイディアとフルバッファとの違いを比較して最終仕様を決めたいと思う。 今のところread.cgiの読み出し〜表示に関しては動いてるので今日はbbs.cgiの再現 に着手します。 とにかくバカっ早いです。 : nobodyさん [sage] 04/01/04 21:48ID:??? お前はsageるな : nobodyさん [sage] 04/01/05 03:28ID:??? みたいに本7にマジレスしてるやつって一体・・・? : nobodyさん [sage] 04/01/05 04:23ID:??? みたいに煽ることしかしないやつって一体・・・? : nobodyさん [sage] 04/01/05 04:36ID:??? お前もポンシチのサイト行ってあっちで仲良くやれや : nobodyさん [sage] 04/01/05 16:02ID:??? マジ質問だが。 本7とそうじゃないのってどうやって見分けてるわけ? : 143@mod_bbs [sage] 04/01/06 01:06ID:??? それ俺も聞きたい : nobodyさん [sage] 04/01/06 17:27ID:??? お前はプログラムの中で名乗っているだろうが。 : ◆garnetGnNk [sage] 04/01/16 00:30ID:??? 動いた気がする ttp://www111.sakura.ne.jp/~as/src/test-1.zip : nobodyさん [sage] 04/01/17 01:11ID:??? 記念かきこ。 sevletで書いて、配置名をbbs.cgiにしてみるとか?(^_^; : nobodyさん [sage] 04/01/17 08:22ID:??? なんでunsignedなんだろー : ◆garnetGnNk [sage] 04/01/18 01:10ID:??? 0xFFを-127で表現したくないからというのはダメ? 日本語コードを処理するのにごにょごにょなのでついでに統一してみると。 ちょっと修正 ttp://www111.sakura.ne.jp/~as/src/test-2.zip : ◆Bf99mSIZZY [sage] 04/01/18 22:50ID:??? HTMLテンポラリをXMLで保持/操作すると楽そう。 やっぱり負値の文字コードは使いたくないよね。 忘れて0x80以上の整定数と比較しちゃったり。 (文字なんだから本来は数値拡張文字('\x80')で比較しないといけないんだけど。。) # is何とか系の関数に負値の文字コードを渡すとおかしくなるライブラリがあったとか。 : ◆garnetGnNk [sage] 04/01/28 23:25ID:??? 0x80 以上の数値拡張文字は警告が出るのでいやん。 いつになったら完成するのやら。 ttp://www111.sakura.ne.jp/~as/src/test-4.zip : nobodyさん [] 04/04/04 17:47:J82jU72N 上げときますね。。。 : nobodyさん [] 04/04/08 23:55:NW0U0Ty4 応援 : nobodyさん [] 04/11/06 09:17:55:VblYqxKV 需要期待上げ : Jim [] 04/12/14 23:47:47:B3VCI5Mv hehehehe : nobodyさん [age] 2006/11/01(水) 12:18:36ID:??? おまえらwebprog住民はUNIX板に負けてて悔しくないのかあげ : nobodyさん [sage] 2006/11/03(金) 00:01:38ID:??? ていうか、両方見てる奴も多いんじゃね? : nobodyさん [sage] 2007/09/18(火) 08:59:22ID:??? この板はとてもレベルが高いとは思えない っていうかUNIX板も年々ひどいことになってるけど : London [jkawwm@gapiwb.com] 2008/10/12(日) 13:38:34ID:??? Dpgorv <a href=" ttp://http://dbvrposuiwvk.com/ ">dbvrposuiwvk</a>, [url= ttp://http://mnubhtuopdfl.com/ ]mnubhtuopdfl[/url], [link= ttp://http://qjvuohlcmoky.com/ ]qjvuohlcmoky[/link], ttp://http://hewavegiworh.com/ : crYgOOKkUmpa [Sophia.Thomas@gmail.com] 2009/05/19(火) 15:29:14ID:??? Good site, admin. : nobodyさん [sage] 2009/05/20(水) 14:37:34ID:??? bbs.cgiの開発に携わりたいのだが、もう今からだと身内でしかやってないのかな : nobodyさん [sage] 2009/05/20(水) 18:40:59ID:??? 最初から身内でしかやってない。 たまにソースが漏れたり、断片的に提示されてるが。 : nobodyさん [sage] 2009/05/20(水) 22:55:40ID:??? Unix板大活躍のころは誰でも入れたとかじゃなかったっけ? あ、そのときいた人たちが身内か。 : nobodyさん [sage] 2009/05/20(水) 23:33:07ID:??? それはread.cgiの方だね。 有志で開発されていたから、一時期ソースが公開されていた。 : ◆TWARamEjuA [] 2009/05/21(木) 02:44:00:7XpNxxPZ ネタを引っ提げて、ょぅι゙ょに来ると良いかも♪ bbs.cgi再開発プロジェクト6 ttp://qb5.2ch.net/test/read.cgi/operate/1176295715/l50 あと、こんな事が進んでいたり♪ 幸せサーバープロジェクト 「アイデア・技術のある人募集中」★3 ttp://qb5.2ch.net/test/read.cgi/operate/1241361889/l50 : nobodyさん [sage] 2009/05/21(木) 10:17:36ID:??? そこのスレに参加しても話すら聞いてくれな : nobodyさん [sage] 2010/02/03(水) 21:51:05ID:??? referer1が http:/ホスト名/ だとOKなのに http:/ホスト名/test/bbs.cgi だと ERROR:ブラウザ変ですよん。になるのはどうしてですか : hLAuDjbRDo [sumerki@gmail.com] 2010/06/30(水) 06:21:15ID:??? <a href=" ttp://http://sumerki3.net/ ">ム褞?? 3</a> : nobodyさん [] 2011/04/23(土) 09:48:22.03:CAXnq9fZ bbs.cgi 流出age : nobodyさん [] 2011/07/21(木) 15:59:46.68:SEgu5R0c age : 電脳プリオン 忍法帖【Lv=40,xxxPT】(4+0:8) 【25.3m】 [sage] 2013/02/10(日) 19:16:48.57ID:??? ∧_∧ ( ・∀・) | | ガガッ と ) | | Y /ノ .人 / ) .人 < >_∧∩ _/し' < >_∧∩`Д´)/ (_フ彡 V`Д´)/ / ← / ← : nobodyさん [] 2013/04/24(水) 14:59:20.19:kRbkZ5UA IPアドレス共有サービスが出てきたからID作成にソースポートを入れないとだな Webサーバでもソースポートのログ取ってる? : nobodyさん [sage] 2017/09/01(金) 11:12:11.26ID:??? 藤井調子こくなよコラ : nobodyさん [] 2017/12/30(土) 12:33:02.05:YhlYw6jg 誰でも簡単にネットで稼げる方法など 参考までに、 ⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。 グーグル検索⇒『半藤のブブイウイウレレ』 FJ8W76CFIB
凡例:
レス番
100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている
名前
名無しさん (青) → sage のレス
名無しさん (緑) → age のレス
ID
ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID
このページは2ch勢いランキング が作成したキャッシュです。元のページはこちら 。削除についてはこちら 。