bbs.cgiの開発作業をすすめていくためのスレッドです。
FOXさんの努力によりSpeedyCGIへの対応が行われ、
パフォーマンスの向上が図られたbbs.cgi。
・雪だるま作戦への対応
・さらなるカスタマイズ
・パフォーマンスの向上
・微妙な虫取り
・長いメインルーチンをより短くコンパクトに
あたりがターゲットか。
前スレ:
bbs.cgi再開発プロジェクト6
http://qb5.2ch.net/test/read.cgi/operate/1113117347/
探検
bbs.cgi再開発プロジェクト7
レス数が950を超えています。1000を超えると書き込みができなくなります。
1root▲ ★
NGNG2006/05/31(水) 18:19:31ID:HNqJT+Wz0
そうしたらスレタイで特殊記号使えるようになってしまうわけだが
879松戸サイエンティスト
NGNG その「特殊記号」とやらの範囲を定義してもらおうじゃないか。
まさか#やら"が「特殊記号」とは言い出さないよな。
まさか#やら"が「特殊記号」とは言い出さないよな。
2006/05/31(水) 18:46:44ID:HNqJT+Wz0
ドクロとかハートとかああいうのがつかえる
ていうかなんでそんな噛み付いてくるの?
ていうかなんでそんな噛み付いてくるの?
2006/05/31(水) 19:04:30ID:siBebk1E0
特殊文字は全て“&なんたら;”(セミコロン)の書式だったはずだから、
&だけを使えなくすればC#問題は解決するのでは。
&だけを使えなくすればC#問題は解決するのでは。
2006/05/31(水) 19:21:20ID:Tl2+UqOl0
? -> &# でおk
2006/05/31(水) 19:23:50ID:Tl2+UqOl0
はなもげらフォームは死ね
&# -> &# でおk
&# -> &# でおk
2006/05/31(水) 19:28:47ID:6sddtZR8P
この時間帯にもなってハナモゲラになる奴は素人
2006/05/31(水) 19:34:29ID:1tOJ4kzO0
実体参照を一律禁止する意味も無ければ、使用する記号を
単体でも無条件で排除する意味も無い。
単体でも無条件で排除する意味も無い。
>>865 まぁそうなんですが,↓ってことで.
http://qb5.2ch.net/test/read.cgi/operate/1145114275/692
あと,SpeedyCGI ではいったんロードされた *.pm は persistent になるんで,
ロードが多少重くてもさほど影響は大きくないかと.空きメモリが逼迫しているとかなら別ですが.
そういえば...... *.pm の重さといえば,昔 bbs.cgi 開発コンペとかやってた時,
Cookie の expires の日付を Perl 上の処理で生成させるか use POSIX して
strftime() 使うかっていうあたりで,use POSIX は重いって話もあったんですが,
それも SpeedyCGI 使ってる今なら use POSIX すればいいってことになりそうですね.
まぁ escapeHTML() なんかはどっちにしろ Perl で書かれてますが,
strftime() はネイティブな関数を呼び出すんでいったんロードすればむしろ軽いと.
http://qb5.2ch.net/test/read.cgi/operate/1145114275/692
あと,SpeedyCGI ではいったんロードされた *.pm は persistent になるんで,
ロードが多少重くてもさほど影響は大きくないかと.空きメモリが逼迫しているとかなら別ですが.
そういえば...... *.pm の重さといえば,昔 bbs.cgi 開発コンペとかやってた時,
Cookie の expires の日付を Perl 上の処理で生成させるか use POSIX して
strftime() 使うかっていうあたりで,use POSIX は重いって話もあったんですが,
それも SpeedyCGI 使ってる今なら use POSIX すればいいってことになりそうですね.
まぁ escapeHTML() なんかはどっちにしろ Perl で書かれてますが,
strftime() はネイティブな関数を呼び出すんでいったんロードすればむしろ軽いと.
887stream ◆PNstream2s
2006/05/31(水) 20:23:04ID:JrKeyzSd0 <も>も使えるようにしてください
2006/05/31(水) 20:42:44ID:IGaZVzco0
いよいよAちゃんねるの実現か…
889▲ ◆SANUKI/VII
NGNG そしたら名前に<>を入れてログずらししてやる
890stream ◆PNstream2s
2006/05/31(水) 21:23:07ID:tTZ/UGWf0 subject.txtの中身は text/plain なのか text/html なのか?
2006/05/31(水) 21:27:29ID:1tOJ4kzO0
なんのはなしだおい
892<>"©eg 株価【610】 ▲ ◆cZfSunOs.U
2006/05/31(水) 21:41:43ID:+fxyHCEC0 まぁ subject.txt でも dat と同じように escape すればいいのかと.
< -> <, > -> >, etc.
< -> <, > -> >, etc.
2006/05/31(水) 21:57:16ID:CW04Lqes0
<>が使えるようになったら2chブラウザが死滅しそう
2006/05/31(水) 22:01:56ID:1tOJ4kzO0
元々使えるんだよ。変換して。
で、>>870
で、>>870
895ひろゆき
NGNG 直すのはそんなに難しくないのかな?
#
#
2006/05/31(水) 22:33:03ID:QMzmnUzi0
本文の"もエスケープされるようになったの?
2006/05/31(水) 22:33:53ID:1tOJ4kzO0
&のことも忘れないで下さい
【調査】 quot;ボーナス、バブル期に近づくquot; 非管理職・過去最高の75万円、管理職・142万円
http://news19.2ch.net/test/read.cgi/newsplus/1149070751/
lt;丶;∀;gt;ニダーも感動します。
http://aa5.2ch.net/test/read.cgi/nida/1149058619/
【調査】 quot;ボーナス、バブル期に近づくquot; 非管理職・過去最高の75万円、管理職・142万円
http://news19.2ch.net/test/read.cgi/newsplus/1149070751/
lt;丶;∀;gt;ニダーも感動します。
http://aa5.2ch.net/test/read.cgi/nida/1149058619/
2006/05/31(水) 22:33:52ID:QMzmnUzi0
おお、なってる
これでノートン誤検出の不毛な騒ぎも終焉か
これでノートン誤検出の不毛な騒ぎも終焉か
2006/05/31(水) 22:34:04ID:1tOJ4kzO0
>896
なったようです。
なったようです。
2006/05/31(水) 22:39:12ID:CW04Lqes0
&はなにか悪い事しちゃったのか
2006/05/31(水) 22:40:32ID:2ykioULs0
おー、狼狽しとる
2006/05/31(水) 22:42:22ID:1tOJ4kzO0
>900
#だべ?
#だべ?
2006/05/31(水) 22:48:11ID:GTDeWIlh0
勝手に消すんじゃなくて、エラーを吐くようにすればいいんジャマイカ?
905通りすがり@天麩羅 ◆/dd8SR4TVc
NGNG スレタイに#使えるようにしたくださいーってやつでしたっけ。
どうして今更って感じもしないでもないのですが。。。
どうして今更って感じもしないでもないのですが。。。
906む P221119009040.ppp.prin.ne.jp
2006/05/31(水) 22:53:35ID:FZ3CebIX0 くおっと問題は、帰宅したら見ます。なかなか。
907root▲ ★
2006/05/31(水) 23:10:57ID:???0 帰宅。
なるほどなぁ。
投稿確認画面のあれと、フォームを処理するところのそれの問題と。
うむむむ。
なるほどなぁ。
投稿確認画面のあれと、フォームを処理するところのそれの問題と。
うむむむ。
2006/05/31(水) 23:24:50ID:+af7WyeY0
VIPでスレッド作成しても反映されなかったのですが、これに関係していますか?
2006/05/31(水) 23:42:04ID:xcLKbCOY0
ただの不可視に一票
910root▲ ★
NGNG " 問題を対策。
投稿確認画面で本文に対して以前から実施していた処理と同じ処理を、
常に実行することにした。
投稿確認画面で本文に対して以前から実施していた処理と同じ処理を、
常に実行することにした。
911root▲ ★
NGNG で、ここの処理はいろいろ微妙な気がしますね。
テクニカルにもポリシーとしても。
・ユーザの入力のセマンティクスは変えたり置換しないで受け入れる
・受け入れられない場合は、エラーにする(e.g. #usubonとか)
というポリシーでするのがよい、というのがあるので、
それに従ってということで。
テクニカルにもポリシーとしても。
・ユーザの入力のセマンティクスは変えたり置換しないで受け入れる
・受け入れられない場合は、エラーにする(e.g. #usubonとか)
というポリシーでするのがよい、というのがあるので、
それに従ってということで。
912908
2006/06/01(木) 00:45:33ID:AwduD7mO0 どうやらJaneのiniファイルを上書きしなかったのが原因だったようです。
例の物を追加したら立ちました。
例の物を追加したら立ちました。
2006/06/01(木) 01:21:39ID:tOvrnLtl0
2006/06/01(木) 01:47:06ID:k1DRmsIg0
投稿確認まだおかしいような
投稿確認の実態参照はブラウザが戻して送り返すから
元のフォームの&と"をただ変換するだけでいいんだけど
投稿確認の実態参照はブラウザが戻して送り返すから
元のフォームの&と"をただ変換するだけでいいんだけど
2006/06/01(木) 01:51:29ID:k1DRmsIg0
あ,>>915は投稿確認のフォームに入るやつね
内容:とか上の表示部分も考えるなら<>も必要か
内容:とか上の表示部分も考えるなら<>も必要か
2006/06/01(木) 01:56:09ID:GQ9xqfF80
valueを""で囲んでいない奴があるから>を変換しないとそこで切れるんですよ
何で囲んでないんだっけ?
何で囲んでないんだっけ?
2006/06/01(木) 01:58:46ID:GQ9xqfF80
つーか<>は変換しても別に間違いじゃないはずだが。
(本文中の"と同様冗長なだけ)
具体的にどんな投稿で不具合が出る?
(本文中の"と同様冗長なだけ)
具体的にどんな投稿で不具合が出る?
920root▲ ★
NGNG 推測100%ですが。
たぶんここは、いろんな人がいろんなアドホックな対策を
いろんなふうにやった結果なんじゃないのかなぁ、とか。
なにぶん、秘境だし。
たぶんここは、いろんな人がいろんなアドホックな対策を
いろんなふうにやった結果なんじゃないのかなぁ、とか。
なにぶん、秘境だし。
2006/06/01(木) 02:05:11ID:k1DRmsIg0
2006/06/01(木) 02:16:01ID:GQ9xqfF80
&が&にならないのはAA板とかで必要だからであって
仕様じゃないの?
仕様じゃないの?
2006/06/01(木) 02:26:55ID:k1DRmsIg0
bbs.cgiの処理順がどうなってるかはわからないけど
投稿確認のフォームに入れるためのエスケープと
実際に書き込むときのエスケープの話がごっちゃになってるのかも
投稿確認のフォームに入れるためのエスケープと
実際に書き込むときのエスケープの話がごっちゃになってるのかも
2006/06/01(木) 02:28:58ID:GQ9xqfF80
たとえば
<と投稿
↓
投稿確認画面でvalue="&<"になる
↓
そのまま投稿されて<に化けてしまう
って話?
<と投稿
↓
投稿確認画面でvalue="&<"になる
↓
そのまま投稿されて<に化けてしまう
って話?
2006/06/01(木) 02:30:15ID:GQ9xqfF80
投稿確認画面でvalue="<"になる
って書くつもりだった
って書くつもりだった
2006/06/01(木) 02:44:55ID:k1DRmsIg0
うーん、勘違いだったかも.とりあえず忘れてごめん.
2006/06/01(木) 03:29:55ID:k1DRmsIg0
>>915 で実体参照のこと書いたけど戻すのは Shift_JIS の文字だけみたいで
それ以外は&#数字; の形式になるようだ(ブラウザによる).
http://qb5.2ch.net/test/read.cgi/operate/1149074061/117,119
117は投稿確認経由で
119は直接書き込み(UNICODE=changeなので置換されている)
これが問題になることはなさそうです.
それ以外は&#数字; の形式になるようだ(ブラウザによる).
http://qb5.2ch.net/test/read.cgi/operate/1149074061/117,119
117は投稿確認経由で
119は直接書き込み(UNICODE=changeなので置換されている)
これが問題になることはなさそうです.
2006/06/01(木) 08:22:28ID:gEmGR/RO0
現在の記号状況
スレッドタイトル
< → lt;
> → gt;
" → "(無変換、使うと確認画面で後ろが消える)
# → 一律削除
& → 一律削除
名前・メール
< → <
> → >
" → "
# → トリップ・キャップ
& → &(無変換)
本文
< → <
> → >
" → "
# → #(無変換)
& → &(無変換)
&# → BBS_UNICODE次第
全体で、実体参照を使って確認画面を通すと、ブラウザによって
対応する文字に戻されて送信される。
実体参照のつもりが、ただの文字になる。
スレッドタイトル
< → lt;
> → gt;
" → "(無変換、使うと確認画面で後ろが消える)
# → 一律削除
& → 一律削除
名前・メール
< → <
> → >
" → "
# → トリップ・キャップ
& → &(無変換)
本文
< → <
> → >
" → "
# → #(無変換)
& → &(無変換)
&# → BBS_UNICODE次第
全体で、実体参照を使って確認画面を通すと、ブラウザによって
対応する文字に戻されて送信される。
実体参照のつもりが、ただの文字になる。
2006/06/01(木) 08:29:01ID:gEmGR/RO0
sid付けて投稿しても、確認画面のフォームにはsidは含めれて無いんすね。
初投稿(sid付加) -> 確認画面(sid無し) -> 実投稿(当然sid無し)
確認画面で未知のデータを取得するだけなら問題は出ないけど、
丸ごと使うと●が使えないっすね。
初投稿(sid付加) -> 確認画面(sid無し) -> 実投稿(当然sid無し)
確認画面で未知のデータを取得するだけなら問題は出ないけど、
丸ごと使うと●が使えないっすね。
2006/06/01(木) 12:56:03ID:zCj65lAB0
確かに丸ごと使うと問題だけど、
でも●を使うのは必ず専用ブラウザだから、
専用ブラウザ側でフォームに限らず勝手に&sid=セッションIDを付加して送信してるわけで、
問題ではないんじゃ?
でも●を使うのは必ず専用ブラウザだから、
専用ブラウザ側でフォームに限らず勝手に&sid=セッションIDを付加して送信してるわけで、
問題ではないんじゃ?
2006/06/01(木) 13:32:17ID:gEmGR/RO0
ま、一つの情報ということで。
2006/06/01(木) 13:48:21ID:gEmGR/RO0
確認画面で起きる問題って、結局は確認画面を通さなければ起きないんだよね。
いや、当然の話なんだけど。
つまり、bbs.cgiで規約表示・入力文表示と共に再度投稿させるのではなく、
kiyaku.cgiみたいなのを別に用意し、そこで規約表示&クッキー発行。
bbs.cgiでは規約クッキーが無ければ、kiyaku.cgiへ誘導するエラーで終了。
いや、当然の話なんだけど。
つまり、bbs.cgiで規約表示・入力文表示と共に再度投稿させるのではなく、
kiyaku.cgiみたいなのを別に用意し、そこで規約表示&クッキー発行。
bbs.cgiでは規約クッキーが無ければ、kiyaku.cgiへ誘導するエラーで終了。
935root▲ ★
NGNG >>934
そんなことも考えたことがありますが、、、。
今の bbs.cgi を読むと、書き込みに関するプログラムは、
bbs.cgi 一本で全部済ませることにしよう、というポリシーと、
ひしひしと感じるコードになっているです。
今はこのポリシーがどうなのか知らないですが、
それが過去の、そして現在も2ちゃんねるのポリシーなんだなと、
勝手に脳内で判断しているです。
そんなことも考えたことがありますが、、、。
今の bbs.cgi を読むと、書き込みに関するプログラムは、
bbs.cgi 一本で全部済ませることにしよう、というポリシーと、
ひしひしと感じるコードになっているです。
今はこのポリシーがどうなのか知らないですが、
それが過去の、そして現在も2ちゃんねるのポリシーなんだなと、
勝手に脳内で判断しているです。
936root▲ ★
NGNG × ポリシーと、
○ ポリシーを、
○ ポリシーを、
2006/06/01(木) 14:27:08ID:gEmGR/RO0
なるほろ
938松戸サイエンティスト
NGNG >bbs.cgi 一本で全部済ませることにしよう、というポリシー
=ウルトラジャンボスパゲッティ30分で間食したら無料
=ウルトラジャンボスパゲッティ30分で間食したら無料
939root▲ ★
NGNG (´-`).。oO(だから、よーくよーく読まないと理解できないんだよなぁ。
じゃ、私がほんとに理解できたてるのかといえば実はそうでもなかったり)
じゃ、私がほんとに理解できたてるのかといえば実はそうでもなかったり)
2006/06/01(木) 14:48:59ID:vwkrJOJOP
subbbsを使わない方向と同じ理由ではなかろうか。
NGNG
1. フォームから送信 →
<>&
2. 確認画面としてブラウザに送信 ←
<>& (ブラウザは、(1)で送信したものと同じように表示する、と思う)
3. 確認画面から送信 →
<>& ((1)と同じものをブラウザが送る、と思う)
確かにややこしいし、間違ってる気もする。
<>&
2. 確認画面としてブラウザに送信 ←
<>& (ブラウザは、(1)で送信したものと同じように表示する、と思う)
3. 確認画面から送信 →
<>& ((1)と同じものをブラウザが送る、と思う)
確かにややこしいし、間違ってる気もする。
NGNG
と思ったら、"を忘れてたし、>927ということもあるのか orz
2006/06/01(木) 21:30:22ID:fnJphcko0
2006/06/01(木) 21:48:35ID:vNCkxzLW0
>>944
明らかにスレ違い
明らかにスレ違い
2006/06/01(木) 23:00:17ID:fnJphcko0
2006/06/02(金) 09:31:49ID:IbeHcsqv0
スレ違い持ち込んどいて何言ってるんだか
949松戸サイエンティスト
NGNG >>940
食べたら食べた分だけスパゲッティを作り足すわけですね。
食べたら食べた分だけスパゲッティを作り足すわけですね。
2006/06/02(金) 14:54:09ID:VKM/HC7x0
2006/06/02(金) 17:09:31ID:UOpDZfI0O
しかも、書き混ぜたあと自分で食べようとしない(というか食べられない)のがさらにw
ごはんは残さず食べるべきだよね。
ごはんは残さず食べるべきだよね。
2006/06/02(金) 23:08:34ID:ssRPt/WgO
>>952
きっと、うまい棒を食べ過ぎたんだよ。
きっと、うまい棒を食べ過ぎたんだよ。
2006/06/05(月) 04:56:21ID:W1PcNuWx0
>>910 の副作用か、名前欄に " が含まれてると
Set-Cookie: NAME="...; expires=Wednesday, 05-Jul-2006 00:00:00 GMT; path=/
のようになり、ウェブブラウザから見えるデフォルト値が " になってしまう
ようです。
Set-Cookie: NAME="...; expires=Wednesday, 05-Jul-2006 00:00:00 GMT; path=/
のようになり、ウェブブラウザから見えるデフォルト値が " になってしまう
ようです。
2006/06/05(月) 05:00:25ID:W1PcNuWx0
うわ
Set-Cookie: NAME=&quot;...; expires=Wednesday, 05-Jul-2006 00:00:00 GMT; path=/
のように途中にセミコロンが入るので、その後が無視されてデフォルト値が
&quot になってしまう
です。
Set-Cookie: NAME=&quot;...; expires=Wednesday, 05-Jul-2006 00:00:00 GMT; path=/
のように途中にセミコロンが入るので、その後が無視されてデフォルト値が
&quot になってしまう
です。
2006/06/05(月) 05:33:58ID:58QscFYx0
Cookieの値エスケープしてないのか…
2006/06/05(月) 11:30:47ID:eSIABjnJ0
アドホックというかアホ
2006/06/05(月) 12:33:39ID:oemyPLQ30
誰がうまいこと言えと(ry
959root▲ ★
NGNG2006/06/05(月) 13:41:52ID:1v3si/Nr0
>>959
言いだしっぺの法則
言いだしっぺの法則
2006/06/05(月) 14:46:53ID:OR19Pgx10
クッキーは時折挑戦しては失敗を繰り返してたでしょ。
2006/06/05(月) 14:48:50ID:Os6BzrFF0
〜; MDMD=asdf(ry; DMDM=(ry
みたいにBEログインに使うクッキーの値の前に
スペースが無いと認識されないっぽく、
他の値はスペース無関係で";"だけで通るようなのですが
みたいにBEログインに使うクッキーの値の前に
スペースが無いと認識されないっぽく、
他の値はスペース無関係で";"だけで通るようなのですが
2006/06/05(月) 19:53:12ID:f+nyeN6M0
で、URLエンコードして、文字コードでハマる、と…
964松戸サイエンティスト
NGNG MD5とかで暗号化してURIエンコード。これ最強。
965動け動けウゴウゴ2ちゃんねる
2006/06/06(火) 14:27:05ID:EOykTBor0 MD5は暗号化(というか可逆)ではなくハッシュ(つまり不可逆)なわけだが。
その上、URLエンコードが必要な文字は登場しなくなるわけだが。
その上、URLエンコードが必要な文字は登場しなくなるわけだが。
雪だるま (bbsd) の index.html でのやり方(Cookie も JavaScript で設定)なら
Firefox での文字化け問題も含め対処できるかと.ページ上部の JavaScript 部分を
<script type="text/javascript" src="http://www2.2ch.net/snow/index.js" defer></script>
に置き換えると.ただ,bbs.cgi での NAME, MAIL の Cookie 設定を停止してもらわないと
JavaScript での Cookie 設定が上書きされちゃいますが......
Firefox での文字化け問題も含め対処できるかと.ページ上部の JavaScript 部分を
<script type="text/javascript" src="http://www2.2ch.net/snow/index.js" defer></script>
に置き換えると.ただ,bbs.cgi での NAME, MAIL の Cookie 設定を停止してもらわないと
JavaScript での Cookie 設定が上書きされちゃいますが......
967root▲ ★
2006/06/06(火) 23:52:38ID:???0969root▲ ★
NGNG 上記により、; を含むトリップキーも、
ちゃんとクッキーに入るようになった模様。
ちゃんとクッキーに入るようになった模様。
2006/06/07(水) 00:58:31ID:5qMUX0Uk0
なんかVIPがぶっ壊れたようですがこれとは関係なし?
974root▲ ★
NGNG975root▲ ★
NGNG 2xx 3xx 4xx 5xx URL
179 221 0 0*/snow/index.js
42 13 0 0 /ba.gif
40 0 0 0 /403/
27 3 1 0 /live.html
15 2 0 0 /2ch.gif
11 24 0 0 /2ch.html
4 0 0 0 /favicon.ico
1 0 0 0 /images/bana3.gif
主なブラウザは 3xx (実際の転送が起こらない)になってくれるみたい。
179 221 0 0*/snow/index.js
42 13 0 0 /ba.gif
40 0 0 0 /403/
27 3 1 0 /live.html
15 2 0 0 /2ch.gif
11 24 0 0 /2ch.html
4 0 0 0 /favicon.ico
1 0 0 0 /images/bana3.gif
主なブラウザは 3xx (実際の転送が起こらない)になってくれるみたい。
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 中居正広氏 フジテレビから「100億円賠償」請求も 第三者委員会の結論次第で [阿弥陀ヶ峰★]
- 【RPG】『ドラゴンクエスト』VS『ファイナルファンタジー』アナタはどっち派? [湛然★]
- 外国人労働者、最多230万人 12.4%増、特定技能20万超 [蚤の市★]
- 【🚺】なぜ女性トイレだけ行列? 706カ所調べてみたら…見えた男女格差 「女性は衣類を上げ下げする時間が必要」 [ぐれ★]
- 【フジ】清水新社長「週刊文春にはあらゆる選択肢を検討している」訴訟の可能性も ★6 [Ailuropoda melanoleuca★]
- 【麻雀】伊藤友里アナ、体調不良で31日のMリーグ公式レポーター欠席 プロ雀士・岡田紗佳から暴言、失言被害 [muffin★]
- 【朗報】猛虎弁に続く第2公用言語「巨人弁」が爆誕!語尾は「○○べ」
- 今なら嫌いな芸能人の過去を掘り返して少しでもアウトな部分を叩けば消せる流れが来てるよな…安倍晋三も徹底的に洗い立てるか? [748563222]
- 【悲報】トランプ大統領、2月1日にカナダとメキシコに25%関税と表明 [733893279]
- 【速報】八潮ジャップの事故、人災確定、トラック荷台引き上げで運転席が埋まったと判明 [926029754]
- 栄養バランスにこだわると結局カロリーメイトだけ食ってればいいって話にならないか
- コストコのフードコート、コーラをペプシからコカに変更。嘆きの声あふれる [838847604]