[過去ログ] 【雪だるま】bbsd⇔各cgi間のI/F仕様について考え・詰めていくスレッド (498レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1
(5): root▲ ★ 2005/10/28(金)15:59 ID:???0 BE AAS
AA省
16
(4): root▲ ★ 2005/10/28(金)18:03 ID:???0 BE AAS
今まで読んでわかったもの その1

整理番号 タイプ ファイル 分類
[1-1] 1-A-a SETTING.TXT 二
[1-2] 1-A-b IDを作るための種ファイル 一
[1-3] 1-B-a index.htmlの広告ファイル1 三
[1-4] 1-B-a index.htmlの広告ファイル2 三
[1-5] 1-B-a ●規制用ファイル 三
[1-6] 1-B-a リモホ規制用ファイル 三
[1-7] 1-B-a Rock54用データファイル 三
23
(4): root▲ ★ 2005/10/28(金)18:26 ID:???0 BE AAS
メモ:
・立てようとしたスレッドキーじゃないキーでスレッドが立つケースの考慮要。

例えば1100000000でリクエストしたけど、1100000001でスレッドが立つ場合。
ごめんなさいリミッター2のところともからむ。
参考:
2chスレ:operate あたり
26
(3): root▲ ★ 2005/10/28(金)18:42 ID:???0 BE AAS
で、既にわかっているものとして、

・指定したdatをageる => スレッド924で使用
・指定したdatの大きさを得る => 512k制限で使用
・指定した板のdat数を得る => ごめんなさいリミッターで使用

かな。
34
(3): root▲ ★ 2005/10/28(金)19:04 ID:???0 BE AAS
>>32
たぶん、事象により個別に考える必要があるですね。
というかまさに「考えどころ」な気がするです。

指摘のとおり、1000超えやスレストのところの判定は、
unless(-w $DATAFILE) とかしているので、
何らかのAPIにより事前に判定するか(1)、bbsdがエラーを戻すか(2)、
いずれにせよどっちが必要ですね。
40
(3): root▲ ★ 2005/10/28(金)20:00 ID:???0 BE AAS
あとは、、、。各種呪文ですね。

dat、subject.txt、subback.html、index.htmlを触るものは、
何らかの対策が必要かもしれません(必要じゃないかもしれません)。

・各種呪文というか、スキルですか。
- 復帰系
- レス削除
- 透明削除
- スレ削除
- スレ移動
- スレスト・スレスト解除
省10
45
(4): ◆cZfSunOs.U 2005/10/28(金)22:44 ID:t62IzKuV0(1/2) AAS
>>1 乙です.

># 復帰/削除cgiなどについては、さてどっちかな => 今後の課題

bbsd に機能を実装するものはフロント側に置いた CGI から bbsd を呼んで,
bbsd に機能を実装しないものはバック側においた CGI を mod_proxy でそのまま呼ぶ,
って感じでしょうか.まぁこの点はとりあえず今後のことですね.

>>22
>ごめんなさいリミッター(datの数をreaddirで数えている)

これは,bbsd で保持している subject データと実際の dat 数に
乖離が生じるのは,サーバダウン後復帰かける前など限られた条件下のみと
思われるので,subject データからカウントする方が軽そうですが,どうでしょうか?
省34
73
(3): root▲ ★ 2005/11/01(火)04:31 ID:???0 BE AAS
さて、いよいよ「詰めていく」をはじめようかと。
まずは、

[1-2] 1-A-b IDを作るための種ファイル 一

についてです。

IDの種は、板ごとにファイル(以下、種ファイルと呼ぶことにします)で持っていて、
そのフォーマットは、

YYYY_MM_DD<>xxバイトのバイナリ
省6
76
(3): root▲ ★ 2005/11/01(火)05:16 ID:???0 BE AAS
ということでbbsdでは、

・bbs.cgi に該当リクエストを聞かれた時点で、
もしファイルがなければ、public_html/板名/md5.cgi などという名前で、
>>73 のフォーマットのファイルを作成する

・もし>>73のファイルが既にあり、今日の日付だったら、
その中身の種を返す

・日付が変わっていたら、ファイルを作り直して、作り直した結果の種を返す

のように動く API を、一つ用意していただくとよいと思うです。
省3
93
(3): ◆cZfSunOs.U 2005/11/05(土)21:55 ID:JPA5x/Zh0(1) AAS
[1-2] 1-A-b IDを作るための種ファイル 一 (>>73-77):
my $md5seed = bbsd($bbs, 'getmd5seed', "$logfilename:$logline");

・ $DOCUMENT_ROOT/$bbs/md5.cgi がなければ作成("yyyy_mm_dd<>16bytes-seed"),あればそれを読み込む.
・ yyyy_mm_dd を現在の日付と比較し,同じならそのまま返し,違っていたら作り直した上で返す.

[1-9] 1-A-c スレッド立てすぎです、のための記録用ファイル 一 (>>81-82):
my $value = bbsd($bbs, 'chkthr', $file, $n, $key, $value, "$logfilename:$logline");

・ $DOCUMENT_ROOT/$bbs/$file があればそれを読み込む.
・ $key というキーを持つデータが存在すれば,それと対になって記録されていた $value を戻り値として返す.
  FIFO データは変更せず.(FIFO の順番だけでなく $value も更新しないということでいいんですよね?)
・ $key というキーを持つデータが存在しなければ,それを FIFO の末尾に追加する.
省6
99
(3): 96 2005/11/06(日)23:39 ID:sDcfiRZ20(1/2) AAS
>>98

いい感じですね

bsd.cgi は返って来たものが意図したものと違ってたら捨てて、
何回かリトライさせればOKだと思う

ところで、bsd.cgi は絶対に種は必要なのかな。
bbsd が保持してるだけじゃ駄目?

; H"の回線が切れたので、ID変わってます
105
(3): 動け動けウゴウゴ2ちゃんねる 2005/11/07(月)22:43 ID:KqEOS0ue0(1) AAS
>>104

そういう意味ではなく、種が必要な処理は全てbbsdに任せて、bbs.cgiは
種を使った処理をしないという選択もありでは?

種を使う処理が仮に書き込み時だけだとすると、書き込み時に bbsd が
変換すればOKなので。

と、各々の細かい役割を知らないのに勝手なこと言ってすいません。
196
(3): ◆cZfSunOs.U 2005/11/26(土)09:58 ID:NBQj9pON0(5/15) AAS
広告対応しますた.書き込み API の引数追加になります.
# ずいぶん引数が多くなってきました(w

    my $errmsg = bbsd($bbs, $key, $datline, $footnote, $adfile1, $adfile2, $adfile3, $adline, "$logfilename:$logline");

$adline が一番下の小さいやつです.

ただ,現状では $adfile1 には外枠が含まれておらず(つまり bbsd 側で枠を作成),
一方 $adfile2, $adfile3 には外枠が含まれ(つまり bbsd 側では枠を作成せず),
そのため今のままでは枠の外観が不統一になってしまいますね.
273
(4): root▲ ★ 2005/12/14(水)20:11 ID:???0 BE AAS
SunOSさんに作ってもらったAPIを使って、
呪文に組み込むための、

$errmsg = &ResSakujo($ita, $key, $resnum);

$errmsg = &ResToumeiSakujo($ita, $key, $resnum);

$errmsg = &SureStop($ita, $key);

$errmsg = &SureAgain($ita, $key);
省7
307
(3): ◆cZfSunOs.U 2005/12/15(木)23:20 ID:p57+vtBb0(4/4) AAS
レスの通常あぼーん:
        my $errmsg = bbsd($bbs, "delete:$key", $range, $deletename, "$logfilename:$logline");
        # 引数追加で $deletename に「あぼーん」などの文字列を指定.
スレッド削除($path へ移動; EXDEV 対策済み):
        my $errmsg = bbsd($bbs, "delete:$key", '*', $path, "$logfilename:$logline");
        # ゴミ箱逝きには move を使ってもらって,お役ご免になりそうなスレ用 delete をこの仕様に変更.

以上実装しますた.
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.236s*