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] 02/04/19 08:49ID:??? 【bbs.cgiのメインフロー】 1、システム関連設定(タイムゾーン&日付・時刻&連想配列) 2、POST入力情報を取得($FORM{}に格納) 3、入力要素の体裁(コントロールコードや<>を除く) 4、各種ファイルPATH生成(詳細は下記参照) 5、設定ファイルから規制などを設定(詳細は下記) 6、ホスト情報($HOST・$PROXY・$IP) 7、クッキー発行 8、書きこみ状態のチェック&補完(monazilla&携帯) 9、書き込み情報のチェック&補完(トリップ&キャップ&節穴&名無し) 10、エラーレスポンス(ポスト情報の判定) 11、要素ごとのサイズや入力の判定(長さや入力無し) 12、ポートチェック 13、新規スレッドと普通書き込みの分岐 14、レス書き込みまたはスレッド立て規制 15、書き込み情報設定(レスポンスアンカー・ID) 16、DATファイルへ書き込み(.dat) 17、関連ファイルの更新(.html・subject・subback・iモード) 18、index.htmlの更新(圧縮) : nobodyさん [sage] 02/04/19 08:49ID:??? 【変数の指定】 use vars qw(%FORM);入力情報 use vars qw(%SETTING);設定情報 use vars qw($NOWTIME);現在の時間 use vars qw($DATE);表示日付 use vars qw($IP);ホスト情報(生?) use vars qw($PROXY);ホスト情報(プロクシ) use vars qw($HOST);ホスト情報($IP<$PROXY>) use vars qw($PATH);$PATH = "../" . $FORM{'bbs'} . "/";(板アドレス) use vars qw($DATPATH);$DATPATH = $PATH . "dat/";(データディレクトリ) use vars qw($TEMPPATH);$TEMPPATH = $PATH . "html/";(テンポディレクトリ) use vars qw($INDEXFILE);$INDEXFILE = $PATH . "index.html"; use vars qw($INDEXGZFILE);$INDEXGZFILE = $PATH . "index.html.gz"; use vars qw($SUBFILE);$SUBFILE = $PATH . "subback.html"; use vars qw($SUBGZFILE);$SUBGZFILE = $PATH . "subback.html.gz"; use vars qw($IMODEFILE);$IMODEFILE = $PATH . "i/index.html"; use vars qw($DATAFILE);データファイル なお、これらについては、変数自体を使わないという選択もありです。 : nobodyさん [sage] 02/04/19 09:06ID:??? #!/usr/local/bin/perl use strict 'vars'; # とりあえずな感じ。 # last modified 2002年 3月 17日 by トオル use vars qw($version); $version ="2002年"; #==================================================== # システム関連設定(タイムゾーン) #==================================================== use vars qw(%FORM); use vars qw(%SETTING); use vars qw($NOWTIME); $NOWTIME = time; # タイムゾーンをセットする { $ENV{'TZ'} = "JST-9"; } # シグナル対処関数 sub SigExit { exit(0); } { $SIG{'PIPE'} = $SIG{'INT'} = $SIG{'HUP'} = $SIG{'QUIT'} = $SIG{'TERM'} = "SigExit"; } : nobodyさん [sage] 02/04/19 09:07ID:??? use vars qw($IP); use vars qw($HOST); use vars qw($PROXY); $IP = $ENV{'REMOTE_ADDR'}; $IP = gethostbyaddr(pack('c4',split(/\./, $IP)), 2) || $IP; if ($ENV{'HTTP_VIA'} =~ s/.*\s(\d+)\.(\d+)\.(\d+)\.(\d+)/$1.$2.$3.$4/) { $PROXY = $ENV{'HTTP_VIA'}; } if ($ENV{'HTTP_X_FORWARDED_FOR'} =~ s/^(\d+)\.(\d+)\.(\d+)\.(\d+)(\D*).*/$1.$2.$3.$4/) { $PROXY = $ENV{'HTTP_X_FORWARDED_FOR'}; } if ($ENV{'HTTP_FORWARDED'} =~ s/.*\s(\d+)\.(\d+)\.(\d+)\.(\d+)/$1.$2.$3.$4/) { $PROXY = $ENV{'HTTP_FORWARDED'}; } $PROXY = gethostbyaddr(pack('c4', split(/\./, $PROXY)), 2); $HOST = $IP; $HOST .= "<$PROXY>" if ($PROXY); : nobody [sage] 02/04/19 09:26ID:??? 一回聞いてみたかったんだけど、こういうスクリプトで CGI.pmをわざわざ使わないようにする理由ってなに? どうせならCGI.pmとか色々モジュール使いーの、perl5.6.1使いーの したほうがよろしいような気がするのですが。 : nobodyさん [sage] 02/04/19 13:08ID:??? 利用者の多いところでCGI.pmは得策ではないだろう。(mod_perlなら話は別だが) ただ大量のvarsはいただけないな。 Perl5.6なら"our $var = initvalue"で済むものが見苦しすぎる。 : nobodyさん [] 02/04/19 16:41:eKZPn7So 2chのbbs.cgiってPerlで書かれてるの? C言語で作られてるって聞いたんだけど・・・・ : nobodyさん [sage] 02/04/19 16:45ID:??? read.cgiはC : nobody [sage] 02/04/20 07:52ID:??? CGI::Simple なんてどうだろう。作者によると同機能でCGI.pmの2倍は速い との事だけど。 : aki [sage] 02/04/20 08:19ID:??? これかな。 ttp://http://tachyon.perlmonk.org/modules/html/CGI-Simple.htm : nobodyさん [sage] 02/04/20 09:19ID:??? そうそう、それよりもう少しあたらしいのがこっち ttp://http://search.cpan.org/search?dist=Cgi-Simple (↑ただしドキュメンテーションがない模様・・・) : nobodyさん [sage] 02/04/20 11:03ID:??? he.netで使ってるPerlのバージョンは全部5.004_01な模様なので そこらへんも考慮しなきゃ、、 : nobodyさん [sage] 02/04/20 12:22ID:??? perlのバージョンなんてどうやて調べんのよ? ttp://oyster.2ch.net/test/check.cgi : nobodyさん [sage] 02/04/20 14:01ID:??? CGI::Simple見てみた。 が、バグが多すぎてまだ実用レベルではないね。 例えば、パラメタのキーに".globals"などのメタデータのキーが入ってるとクラッシュする。 (場合によってはクラッシュせずに予想外の動作をするものもある) これじゃCGI.pm v3.xの方がまだマシだね。 : nobodyさん [sage] 02/04/20 16:55ID:??? 速いにこしたことはないけどCGI.pmを使いたくないほど過酷な環境 ならPerlCGIをやめたほうがいいと思うのだが。 : nobodyさん [sage] 02/04/20 17:27ID:??? mod_perlマンセー : nobodyさん [sage] 02/04/20 21:59ID:??? CGI.pmを使っても全く影響が感じられないような素晴らしい環境なんてそうは無いだろ。 : nobodyさん [] 02/04/22 09:43:J+MAbrVW ttp://http://www8.ocn.ne.jp/~hoehoe/bbscgi.txt bbs.cgiのソースです。 : nobodyさん [ ] 02/04/22 11:06ID:??? で、なにを改良するんさ? : nobodyさん [sage] 02/04/22 11:08ID:??? この板が激しく適切ですね : aki [sage] 02/04/22 12:02ID:??? (´-`).oO(なんか、実験板方面が閉鎖的なんだよなぁ……。) : nobodyさん [sage] 02/04/22 17:13ID:??? (´-`).。oO(禿げ同・・) : nobodyさん [] 02/04/22 21:03:oJQeFi6r 実験場とは別に、この板で作ってみるとか。 2ちゃんねるで使われるかどうかは別にして。 : nobodyさん [] 02/04/23 01:31:Og/loODO 一応リンク monazilla Part 3 ttp://pc.2ch.net/test/read.cgi/tech/1012544484/l20 2ちゃん専用ブラウザ「かちゅ〜しゃ」Part60 ttp://pc.2ch.net/test/read.cgi/software/1018022445/l20 2ちゃんねる用ブラウザ「ホットゾヌ」 Part10 ttp://pc.2ch.net/test/read.cgi/software/1018096103/l20 2ちゃんねる用ブラウザ「A Bone」Vol.15 ttp://pc.2ch.net/test/read.cgi/software/1017916153/l20 新鋭2ちゃんねるブラウザ「Jane2ch」 part 3 ttp://pc.2ch.net/test/read.cgi/software/1016550175/l20 2ちゃんねる用ブラウザ「ギコナビ」 Part2 ttp://pc.2ch.net/test/read.cgi/software/1015310037/l20 : aki [sage] 02/04/23 16:38ID:??? 賛成。 とりあえずおおざっぱな方針かな? 個人的には、もはや軽量化はどうでもよくて、 「使いやすい」2ch互換スクリプトにしたいところ。 もちろん、無駄は省かれるべきだけど。 : nobodyさん [] 02/04/23 20:42:M/9S6Mh9 age : nobodyさん [] 02/04/25 00:36:Dqy3iBWZ じゃあ、このbbs.cgiを参考にしつつ、 17氏スクリプトを作りつつ、使いやすい2ch掲示板クローンを作るって方向でどうですか? 17氏が引退して、「2chスクリプトくれくれ君」が増えてうざいし。。 : nobodyさん [] 02/04/25 00:44:mY6Jeycp ttp://http://tolkien.s7.xrea.com/paranoia/ 全部perlで1から作り上げたらしいよ。 : nobodyさん [] 02/04/25 01:32:EeJjolbS というか、どう考えても17氏スクリプトと2ch互換は、転送量とか考えたら設計が古くてだめでしょ。 アハンと12chくらいじゃないかな? : nobodyさん [sage] 02/04/25 11:32ID:??? 完全なクローンなんて作っても仕方ない。 プロトコル互換の「もっとずっと使いやすい」BBSを設計してみてはどうだろう。 . . . . . . でも専用ブラウザで見るなら同じことなんだよな。 : nobodyさん [sage] 02/04/28 01:08ID:??? bbs.cgi開発【WebProg板】 1 :nobodyさん :02/04/19 08:10 ID:20PTEIcN ttp://qb.2ch.net/test/read.cgi/jikken/1017071166/l50 2ちゃんねるの、bbs.cgiが、現在住民の手により作られているようです。 WebProg板でも、改良に役立つように、協力しませんか? : nobodyさん [] 02/05/05 22:52:dTR58Yl2 ちょっと話は違うけど、PHPとDBを利用して作ったほうが 負荷も少なく、早くて、しかもログが壊れにくいと思うんだけど、 どうなんでしょうか。 : nobodyさん [sage] 02/05/05 23:01ID:??? んでもひろゆきとかドル猫達はいじれない罠 : nobodyさん [sage] 02/05/05 23:46ID:??? 漏れはperlがなんとなく好きなんだが、 速さとかを突き詰めていけばphpとかそういう方向に行くんだろうな : nobodyさん [sage] 02/05/06 00:03ID:??? phpって速いの?Perlより遅い気がするんだけど。 もしかして4.2xは速いの? : nobodyさん [sage] 02/05/06 00:18ID:??? モジュル版が速いって事では? : nobodyさん [sage] 02/05/06 00:59ID:??? mod_perlを使えばperl早いけど、 夜勤さんが使わないっていってるからなぁ。 : nobodyさん [sage] 02/05/06 23:09ID:??? c++ : nobodyさん [sage] 02/05/06 23:18ID:??? ++c; : nobodyさん [sage] 02/05/07 08:43ID:??? +c+ : nobodyさん [sage] 02/05/07 08:43ID:??? (+c+) : 名無しだよもん [sage] 02/05/07 08:50ID:??? >> ttp://pc.2ch.net/test/read.cgi/php/1019673146/ : nobodyさん [sage] 02/05/07 08:50ID:??? (+c+)b : nobodyさん [sage] 02/05/07 09:52ID:??? コラボ ワラタヨ : nobodyさん [sage] 02/05/08 03:10ID:??? test ttp://http://isweb43.infoseek.co.jp/art/mm2ch/cgi-bin/admin/kanri.cgi : aki [sage] 02/05/08 03:51ID:??? これなに? なんかとても面白そうな雰囲気が。 : nobodyさん [sage] 02/05/08 16:36ID:??? ほー。いいねそれ。 : nobodyさん [sage] 02/05/09 14:48ID:??? 17スクリプトだろ、、、 : nobodyさん [sage] 02/05/10 14:23ID:??? それはどうかな。 : nobodyさん [ ] 02/10/03 16:43ID:??? ここでいいのかな トリップをメール欄に書くとおかしくなるの既出? 例えば、 名前[#hogehoge]メール欄[sage] →名前[ ◆/Re6aTC.]メール欄[sage] 名前[#hogehoge]メール欄[sage #hogehoge] →名前[ ◆jG/Re6aTC.]メール欄[sage] : nobodyさん [sage] 02/10/03 16:46ID:??? 昨日からトリップ10桁になったんだよ メール欄とは無関係、メール欄の#以降が削除されるのは以前からの仕様 : nobodyさん [sage] 02/10/03 16:49ID:??? ホントだ。 思い切り誤解ですた。ごめんなさい。 : nobodyさん [sage] 02/11/04 15:34ID:??? の軽量化コンペのログ、HTML化されてた模様 ttp://ooo.2ch.net/jikken/kako/1017/10170/1017071166.html : nobodyさん [age] 02/11/14 15:48ID:??? 843 名前:夜勤 ★ 投稿日:02/11/14 15:22 ID:??? ??? ex , ex2 うまくいっているのかなぁ。 結局は、極端にいえば「もう一行も bbs.cgi にはコード追加できません」 ってことのような感じ、もちろんコードの内容にもよりますけど。 人が増えすぎて、コードを削らなきゃならない段階のようです。 解決策は (1) コードを削る。 (2) サーバを増設する。 ということでしょうが、どっちにしろ なんともかんとも さーおまいら出番ですよ。 : nobodyさん [sage] 02/11/29 01:10ID:??? 夜勤って頭悪いと思う。 : ゆかりぼん [] 02/12/28 22:19:mkbLi1ni うん。 : nobodyさん [] 02/12/29 00:49:kIUCOKS/ 夜勤が本気でそんなこと言ってるなら夜勤は真性のアフォ。 : nobodyさん [sage] 02/12/29 04:37ID:??? 「サーバを増設したいから、●買ってくれ」が正解。 : 山崎渉 [(^^)sage] 03/01/15 13:39ID:??? (^^) : nobodyさん [sage] 03/02/16 00:43ID:??? 廃れてるなぁ。 誰かまじめにbbs.cgi開発する人いないの? : nobodyさん [sage] 03/02/16 10:28ID:??? 真面目に開発している人はここには来ない罠。 : nobodyさん [sage] 03/02/16 18:54ID:??? いいだしっぺの法則。 : nobodyさん [sage] 03/02/16 19:20ID:??? お前らも暇な奴だなぁ(オレモナー っていうのは置いておいて、真面目にやっている人がいるなら ソースコードを提供してもいいよ。ただし再配布は禁止。 どうよ? : nobodyさん [sage] 03/02/16 19:28ID:??? あー、書き忘れたけれど興味あるならメールください。 フリーメールはNGです。 kigaru2@kigaru2.net (正体ばればれだなぁ。) : 63 [sage] 03/02/16 19:54ID:??? hu8up@ww2.personal.ne.jp このメアドでよろしいでしょうか。 : 63 [sage] 03/02/16 22:18ID:??? 突っ込み無い…(´・ω・`)ショボーン : nobodyさん [sage] 03/02/16 22:19ID:??? 返事がない。攣られたようだ。 : nobodyさん [sage] 03/02/16 23:19ID:??? >66 どあほー^^; : 63 [sage] 03/02/17 03:29ID:??? ヽ(´ー`)ノ : nobodyさん [] 03/02/18 20:43:pPA3E1lh おまえら、出番ですよ。 ttp://pc.2ch.net/test/read.cgi/unix/1044371176/826 : nobodyさん [sage] 03/02/18 21:52ID:??? 正直perl以外は(´・ω・`)ショボーン : nobodyさん [sage] 03/02/18 22:17ID:??? 時代はPHPか。 勉強してみるか(お。 : 山崎渉 [(^^)] 03/03/13 17:13ID:??? (^^) : 山崎渉 [(^^)] 03/04/17 12:24ID:??? (^^) : nobodyさん [] 03/04/17 12:33:9xDxcLAx ■ お手伝いさん募集中。。。 ttp://http://jbbs.shitaraba.com/computer/bbs/read.cgi?BBS=2095&KEY=1050545010 夜勤さんが助手を募集しているらしい。 来たれ猛者。 : ◆garnetGnNk [sage] 03/04/18 07:02ID:??? へるぷみー。 ttp://http://www.kigaru2.net/cbp/ : 山崎渉 [(^^)sage] 03/04/20 06:04ID:??? ∧_∧ ( ^^ )< ぬるぽ(^^) : ◆garnetGnNk [sage] 03/04/20 21:46ID:??? 反応なしかyo! というか、面倒くなったのであと誰かよろ。 : nobodyさん [age] 03/04/20 23:39ID:??? 17氏の手に入った。 PATHINFO対応に改造するにはどうすればいいでつか? : nobodyさん [sage] 03/04/21 03:04ID:??? PATHINFO対応の他のBBSのソースを参考にしたら? : ◆garnetGnNk [] 03/05/05 19:13:o0tvPWt6 誰も突っ込みいれてない(´・ω・`) 一応動くんだけどなー。 誰か試してくれないかなー。 : nobodyさん [] 03/05/05 19:20:uopb4ZqD これはbbs.cgiをCで書いたやつとかですか? : ◆garnetGnNk [] 03/05/05 20:13:o0tvPWt6 そだよ。 まだ足りない機能もあるけど^^; : nobodyさん [] 03/05/05 21:06:xzfVtRnc ダウンロードとコンパイル出来ました。 RedHat8です。 2ch初心者で申し訳無いんですけど、起動の方法がわかりません。 「ERROR:POSTしてください!」とか出ました。 : 動画直リン [] 03/05/05 21:10:lHdchtO/ ttp://http://homepage.mac.com/hitomi18/ : ◆garnetGnNk [] 03/05/06 07:24:VK0iAUmq コンパイルは適当に gcc -O2 -Wall -o bbs.cgi bbs.c とやればいいと思ふ。 >85 コンソールじゃなくて、CGIで起動しているんだよね? 環境変数がセットされてないのかなぁ? ごめん、よくわからないや^^; : 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勢いランキング が作成したキャッシュです。元のページはこちら 。削除についてはこちら 。