■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50
read.cgi改良スレッド 2
- 15 :デフォルトの名無しさん :01/09/09 22:38
- 最終レスしかチェックしないのはかまわなくて、スレスト解除がかかった後に
bbs.cgiが許容しているのにread.cgiがFORMを出さないせいで実質的に
スレストのまま、という状態が2chの仕様としてどうか、って事なんだけど。
- 16 :デフォルトの名無しさん :01/09/09 22:41
- >>15
解除されているかどうかはどうやったら分かるのかな。
- 17 :デフォルトの名無しさん :01/09/09 22:44
- >>15
それは本来書けるべきでないものだから修正するとしたら
bbs.cgiのほうを書けないように修正するのが筋かと思われ…
- 18 :デフォルトの名無しさん :01/09/09 22:48
- >>17の言うことが健全、というか正常だと思う。
- 19 :デフォルトの名無しさん :01/09/09 22:53
- どんどん板が復活しております。わーい。わーい。
- 20 :デフォルトの名無しさん :01/09/09 22:59
- bbs.cgiを修正するのなら
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998997848&st=887&to=887&nofirst=true
も......
- 21 :名無し娘。 ◆vP.bOZFQ :01/09/09 23:49
- >>1
前スレの案一覧
(誤)http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998997848&st=30
(正)http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998997848&ls=30
。。。。。。(涙
- 22 :デフォルトの名無しさん :01/09/10 00:18
- >>12
最新版を手元で動かすと再現しないなあ。
- 23 :デフォルトの名無しさん :01/09/10 00:19
- >>22
どうなります?
- 24 :22 :01/09/10 00:21
- >>23
>そんな板orスレッドないです。
となる。
read.cgi?bbs=net
(keyを書かない)で出したときと同じ。
- 25 :デフォルトの名無しさん :01/09/10 00:30
- >>17
いや、本来は書けるべきなんだよ。副作用とはいえ解除されてんだから。
- 26 :デフォルトの名無しさん :01/09/10 00:33
- >>25
解除されるべきでないんだから書けるべきでないと思う。
- 27 :名無し娘。 ◆vP.bOZFQ :01/09/10 00:37
- 「スレスト解除がかかる」とはどういう状態なのかを整理した方がよろしいかと。
私も自信がないので言いっぱなしごめん。
- 28 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:05
- どんなもんでしょか?
区切りのいいところですか?
- 29 :デフォルトの名無しさん :01/09/10 01:09
- いいんじゃないすか?
- 30 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:11
- http://www.gedoh.org/aki/2ch/current/bbs/
ここから、落とせばいいんですよね?
zlib はかわってないですか?
- 31 :デフォルトの名無しさん :01/09/10 01:13
- >>30
zlibは変わってませんよ〜
- 32 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:14
- 了解ですー
今日は piza2 で行きます。
- 33 :デフォルトの名無しさん :01/09/10 01:16
- >>32
変わったのは
read2ch.h, read.c, r2chhtml.h, datindex.c, Makefile かな。
- 34 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:21
- ふむー
なぜか、piza2 で zlib のコンパイルが通らない、、、
Makefile:42: *** missing separator. Stop.
なんて言われちゃいました。
kaba では ok だったのに、、、
- 35 :デフォルトの名無しさん :01/09/10 01:24
- >>34
そこでエラーってのは変ですね。
化けてるとか? (^^;
最新のread.tgzから展開してやるとどうでしょうか?
ってもしかしてmakeがgnu makeじゃないとか…OSからして違う? (^^;
- 36 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:25
- いやん、すまぬ、私のミス makefile まちがった。
read.cgi 用のを入れてた。
- 37 :デフォルトの名無しさん :01/09/10 01:26
- >>36
なるほど(笑)
- 38 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:26
- いぇーい
http://piza2.2ch.net/test/read5x.cgi?bbs=mona&key=1000048768&ls=50
- 39 :デフォルトの名無しさん :01/09/10 01:28
- >>38
またCGINAMEをread5x.cgiにしといてくださーい。
- 40 : ◆D69Zsbfg @夜勤 ★ :01/09/10 01:29
- >>39
しましたー
- 41 :デフォルトの名無しさん :01/09/10 01:29
- >>26
>>10のような状況が考えられるので、解除されるのが必ずしも
間違いとは言えない。
それで運用された実績もあるし。
- 42 :デフォルトの名無しさん :01/09/10 01:31
- cvsでtag打っときました( YAKIN20010910 )
- 43 :デフォルトの名無しさん :01/09/10 01:31
- なかなか良い感じですね。
http://piza2.2ch.net/test/read5x.cgi?bbs=mona&key=999190395
- 44 :デフォルトの名無しさん :01/09/10 01:32
- >>41
だから新スレを立てればいいじゃん。
- 45 :デフォルトの名無しさん :01/09/10 01:33
- http://piza2.2ch.net/test/read5x.cgi/tech/1000035521/44-
ふむふむ
- 46 :前スレ857 :01/09/10 01:34
- 「誤爆だけで・・・」っていうスレ、>> のリンク動作を確認するのに便利だ。
http://piza2.2ch.net/test/read5x.cgi?bbs=ff&key=998319724&st=301&to=350
ここの333だけリンクが有効になってます。今の時間帯だと全部オフが正しい?
- 47 :デフォルトの名無しさん :01/09/10 01:37
- >>46
いや、「全部読む」の増加対策で、今見えてる範囲外の
リンクは消さないのが正しい。
- 48 :デフォルトの名無しさん :01/09/10 01:38
- 「新レスの表示」サイコー
- 49 :デフォルトの名無しさん :01/09/10 01:39
- 1は必ず表示した方がいいと思った。
- 50 :デフォルトの名無しさん :01/09/10 01:40
- 自分の行ってるスレのアドレスが出てちょっとうれしかった。
それだけ(藁
- 51 :前スレ857 :01/09/10 01:45
- 勘違いだったか・・・すまんです。
- 52 :前スレ857 :01/09/10 01:57
- http://piza2.2ch.net/test/read5x.cgi?bbs=kao&key=986050461&ls=5
1000を超えてたら、
「サイズが496KBを超えています。512KBを超えると表示できなくなるよ。」
これはいらないかもしれない。
- 53 :デフォルトの名無しさん :01/09/10 02:00
- サイズ超え警告が正常に働いてることはとりあえず確認できた
- 54 :デフォルトの名無しさん :01/09/10 02:04
- http://piza2.2ch.net/test/read5x.cgi?bbs=mona&key=999190395&st=101&to=201&nofirst=true
の110のレスで >>18 のURLリンクがおかしいです。
http://piza2.2ch.net/test/read5x.cgi?bbs=mona&key=999190395&st=1&to=50&nofirst=true#18
- 55 :デフォルトの名無しさん :01/09/10 02:06
- >>54
別におかしくないと思うけど?
- 56 :デフォルトの名無しさん :01/09/10 02:08
- >>55
今までの仕様だと
http://piza2.2ch.net/test/read5x.cgi?bbs=mona&key=999190395&st=18&to=18&nofirst=true
じゃないの?
- 57 :55 :01/09/10 02:10
- ごめん、おかしいね。1が表示されてない。
こういう場合&nofirst=trueが付いてると上の「1-」とリンク先が
共通にならなくてキャッシュの効果が落ちると思うけどどうだろ。
- 58 :デフォルトの名無しさん :01/09/10 02:12
- >>56
それはキャッシュの利用効率を高めるためのCHUNK_ANCHOR
の仕様。でもせっかくCHUNK単位でレスを区切っても&nofirst=true
が付いていては意味がないと思われ
- 59 :56 :01/09/10 02:16
- >>58
index.htmでの表示と違うのは何とも・・・
操作と結果は統一して欲しい気が。
スレ違いだったらごめんなさい。
- 60 :デフォルトの名無しさん :01/09/10 02:52
- >>59
それはテレホタイムにリンクをカットしてる時点ですでに
違ってるわけだし。
bbs.cgiのほうを修正できないとなんとも。
- 61 :デフォルトの名無しさん :01/09/10 02:56
- とりあえず今日わかったことは
・トップの1-51-等の表示のために、CHUNK_ANCHORはONにしたい
・>>xxxのリンク先がCHUNKEDになるのは嫌だ。
↓
仕方がないから、新しいcondition(CHUNK_RESLINK)をつけ、
>>xxxのリンク先をCHUNK単位に直すのはCHUNK_RESLINKの時だけにしよう
CHUNK_RESLINKがdefineされてCHUNK_ANCHORがdefineされてなかったらエラー。
(CHUNK_ANCHORは再定義できるけど、CHUNK_NUMの再定義は数値が必要だから)
・レス数とサイズの警告は、両方出てもよい。
・1000 Overの場合は、サイズ表示はいらない。
↓
#ifdef CAUTION_FILESIZE の直後に if (line <= RES_RED) {
#endif の直前に }
NAME_ANCHORは、あってもいいのかなぁ
- 62 :デフォルトの名無しさん :01/09/10 03:16
- BadAccessがrawmodeのときでもツールを弾いている気
がするんですが、ツールに読ませるためのモードが
ツールを弾くのはまずいのでは…。
- 63 :デフォルトの名無しさん :01/09/10 03:17
- 「名前:」をとっとと消せよ
- 64 : ◆D69Zsbfg @夜勤 ★ :01/09/10 03:19
- piza2 に全面的に導入しました。
ver 5.20 にしました。
- 65 :デフォルトの名無しさん :01/09/10 03:20
- >>xxxのリンク先を広げるconditonは、CHUNK_ANCHORより
CREATE_NAME_ANCHORであるべきではないでしょうか。
そうすればconditionを追加する必要もありませんし、
>>xxxのリンク先を広げる必要がなければname anchorも
いりませんからそのほうが合理的だと思います。
- 66 :65 :01/09/10 03:24
- よく考えるとCHUNK_ANCHORが有効でないと
>>xxxのリンク先を広げる意味もないか…。
- 67 :デフォルトの名無しさん :01/09/10 03:26
- CHUNK_ANCHORのとき、上に表示するリンクは範囲外の
ものだけにしたほうがいいと思う。
(たとえば「レスを全部読む」の場合にはぜんぜん必要ない)
- 68 :デフォルトの名無しさん :01/09/10 03:31
- それから現在の表示範囲より下のCHUNKへのアンカーは
上ではなくて下に表示したほうがいいと思うんですが…。
- 69 :デフォルトの名無しさん :01/09/10 03:31
- MAX_FILESIZE_BUSYが正式に採用されるまでの間、
dat_read()の最初
#ifndef MAX_FILESIZE_BUSY
if (zz_fileSize > MAX_FILESIZE)
html_error(ERROR_TOO_HUGE);
#else
if (zz_fileSize > MAX_FILESIZE || (isbusytime && zz_fileSize > MAX_FILESIZE_BUSY))
html_error(ERROR_TOO_HUGE);
#endif
正式にヘッダに入ったら、
Settingsにも加えたほうがいいでしょう。
(メンバー変数、初期値、#undef + #define、config.txt)
- 70 : ◆D69Zsbfg @夜勤 ★ :01/09/10 03:41
- ちょっと 質問でーす
teri にも ver 5.20 いれたんですけど、>>12 というのだけを
一日中有効にするのは、どうすれば良いのでしょうか?
- 71 : ◆D69Zsbfg @夜勤 ★ :01/09/10 03:43
- つまり >>レス番 の機能を teri サーバだけは一日中
有効にしたいのです。
- 72 :デフォルトの名無しさん :01/09/10 03:44
- >>70
read2ch.hの
#define LINKTAGCUT
をコメントアウトすればいいのではないかと…
- 73 :72 :01/09/10 03:46
- ごめんなさい、
#define LINKTAGCUT (0)
に変更、の間違いでした。
- 74 : ◆D69Zsbfg @夜勤 ★ :01/09/10 03:47
- >>72
さんきゅです。
さっそく teri でやってみます。
- 75 : ◆D69Zsbfg @夜勤 ★ :01/09/10 03:47
- >>73
了解でーす
- 76 :デフォルトの名無しさん :01/09/10 03:49
- >夜勤さん
Ver5.20と見た目、機能はほぼ同じで、
・>>nnのリンク先が広がるのを避けたい場合
read.cの440行目付近の
#if defined(CHUNK_ANCHOR) && defined(CREATE_NAME_ANCHOR)
を
#if 0
に変えるとよいです。
LINKTAGCUTは、例えば、
/accuse/SETTING_R.TXTに
LINKTAGCUT=0
と書いて置いておく方法もあります。
- 77 : ◆D69Zsbfg @夜勤 ★ :01/09/10 03:53
- どもです。
削除依頼板は、>>xx が効かないと、効率が悪いらしいです。
とりあえず、今日は >>73 をやりました。
- 78 :デフォルトの名無しさん :01/09/10 04:29
- 批判要望よりコピペ
697 名前:名無しさんの声 投稿日:01/09/10 04:20 ID:mhbyzSZQ
「新レスの表示」の
nofirst=true
は無いほうがいいな
- 79 :デフォルトの名無しさん :01/09/10 08:59
- ブランチは作らないの?
- 80 :デフォルトの名無しさん :01/09/10 09:52
- read.cgiではすでに行っているんですが index.htmlの方でもトップのJavaScriptのところで
----------------------------------------------------------------------
function ol(e){
var N=getCookie("NAME"),M=getCookie("MAIL"),i;
with(document) for(i=0; i<forms.length; i++)
if(forms[i].FROM&&forms[i].mail)
with(forms[i]){FROM.value=N;mail.value=M;}
}
onload=ol;
----------------------------------------------------------------------
というのを入れて その代わり投稿フォームのところでのdocument.write()を
やめてはどうでしょうか? 一番上の
NameMail = "<INPUT TYPE=text NAME=FROM SIZE=19 VALUE=" + getCookie("NAME") + "> E-mail:<INPUT TYPE=text NAME=mail SIZE=19 VALUE=" + getCookie("MAIL") + ">";
と 各投稿フォームのところでの
<SCRIPT Language="JavaScript"><!--
document.write(NameMail);// --></SCRIPT><NOSCRIPT></NOSCRIPT>
が削れる分 トータルでは節約になると思いますが
- 81 :デフォルトの名無しさん :01/09/10 09:59
- >>80
スレ違いです
- 82 :デフォルトの名無しさん :01/09/10 10:05
- rawmodeのときは、圧縮に対応していないクライアントは
弾くようにしませんか?
rawmodeで非圧縮のデータを返すメリットってほとんど
ないように思うのですが…。
- 83 :デフォルトの名無しさん :01/09/10 10:30
- 全レス表示規制中に「次の100レス」でたどっていくと、
表示範囲が
1-100
100-199
199-298
:
というふうに変化していきますが、CHUNK_ANCHORとの
噛み合わせが悪いので
1-100
101-200
201-300
:
と増えていくようにしませんか?
(というかそもそも「次の100レス」の代わりに
「101- 151- 201-…」を下に持ってくればいいと思う)
- 84 :デフォルトの名無しさん :01/09/10 10:45
- read.cgi 5.20でも
http://piza2.2ch.net/test/read.cgi/mona/
で[ここ壊れてます]が連打する現象が解消されていません。
http://piza2.2ch.net/test/read.cgi/mona/?raw=0.0
とするとわかりますが、どうもsubject.txtを無理やり分解して
表示しようとしている模様。
- 85 :デフォルトの名無しさん :01/09/10 11:07
- >>84
#ifdef USE_PATH
/* スレ一覧を取りに逝くモード */
if (1 <= path_depth && path_depth < 3) {
sprintf(fname, "../%.256s/subject.txt", zz_bs);
zz_fileLastmod = getFileLastmod(fname);
}
#endif
こんなコードが入ってる割にこれ解析してないようだな。
これが原因か。
- 86 :デフォルトの名無しさん :01/09/10 11:20
- ↓こういうのって
<a href="read.cgi?bbs=tech&key=998997848&st=1&to=50">1-</a>
<a href="read.cgi?bbs=tech&key=998997848&st=51&to=100&nofirst=true">51-</a>
<a href="read.cgi?bbs=tech&key=998997848&st=101&to=150&nofirst=true">101-</a>
<a href="read.cgi?bbs=tech&key=998997848&st=151&to=200&nofirst=true">151-</a>
<a href="read.cgi?bbs=tech&key=998997848&st=201&to=250&nofirst=true">201-</a>
<a href="read.cgi?bbs=tech&key=998997848&st=251&to=300&nofirst=true">251-</a>
↓こうすると
<form><select onchange='
var st=parseInt(this[selectedIndex].text);
location="read.cgi?bbs=tech&key=998997848&st="+st+"&to="+(st+49)+"&nofirst=true";
'>
<option>1-
<option>51-
<option>101-
<option>151-
<option>201-
<option selected>251-
</select></form>
スリム化できるような気がする 現在表示中の範囲の記事番号のところは
<option>でselectedを入れておくと
- 87 :デフォルトの名無しさん :01/09/10 11:26
- PATH仕様が標準になってくれればなー。
<a href="1-50">1-</a>
<a href="51-100">51-</a>
<a href="101-150">101-</a>
<a href="151-200">151-</a>
<a href="201-250">201-</a>
<a href="251-300">251-</a>
それでもFORMにしたほうが若干小さくなるかな。
ただFORMだと>>67-68 >>83のような工夫がしづらくなる。
- 88 :デフォルトの名無しさん :01/09/10 11:38
- >>82の修正
BadAccessの最初に
if (rawmode && !gzip_flag)
return 1;
を追加。
- 89 :デフォルトの名無しさん :01/09/10 11:41
- >>88
if (rawmode)
return !gzip_flag;
のほうがよくないかな?
- 90 :88 :01/09/10 11:45
- あ、
#ifdef GZIP
#endif
で囲む必要があるか。
- 91 :88 :01/09/10 11:47
- >>89
>>62の修正も合わせてるわけね。納得。
- 92 :デフォルトの名無しさん :01/09/10 12:08
- >>85
・・・USE_PATHをundefすれば根本解決しそうな、、、
- 93 :デフォルトの名無しさん :01/09/10 12:18
- >>85 と >>89 あてた(85は#if 0にしただけ, 89はRAWOUTでも囲んだ)
- 94 :デフォルトの名無しさん :01/09/10 12:24
- >>92
USE_PATHしたときだけこんな処理が入るほうが変だと思うけど…
そもそもこのコードいつ誰がどういう目的で追加したの?
- 95 :デフォルトの名無しさん :01/09/10 12:28
- >>94
そのコードの下のほうでインデックス処理とかがあるようだけど
そっちは#if 0 /* #ifdef USE_PATH */で無効化されてたのに、
そのためにsubject.txtを読むように準備する部分が生き残ってたようだ。
- 96 :デフォルトの名無しさん :01/09/10 12:32
- こっちだけ殺して>>85は殺してなかったわけね
#if 0/* #ifdef USE_PATH */
else if (path_depth == 2) {
if (zz_ky[0] == '-')
dat_out_subback();/* スレ一覧 */
else
dat_out_index();/* 板ダイジェスト */
}
#endif
- 97 :デフォルトの名無しさん :01/09/10 12:39
- 板ダイジェストにcondition付けませんか?
#if 0で無効にしてるのって気持ち悪い
- 98 :デフォルトの名無しさん :01/09/10 12:41
- >>97
いらんだろ、
もともと余計な機能だったんじゃないか?
- 99 :デフォルトの名無しさん :01/09/10 12:52
- config.txt
×DIGEST
板ダイジェストを有効にする。
USE_PATHをONにしたときにのみ使用可能。
/test/read.cgi/tech/ 板ダイジェスト(index2.html相当)
/test/read.cgi/tech/- 全スレ一覧(subback.html相当)
read.cへの変更点
#if 0 /* #ifdef USE_PATH */
↓
#if defined(USE_PATH) && defined(DIGEST)
- 100 :デフォルトの名無しさん :01/09/10 12:54
- >>98
そうだね。じゃあ
#if 0 /* #ifdef USE_PATH */
となってるconditionはバッサリ削除
digest.c digest.hも削除。Makefileからも取り除く
ということで。
- 101 :デフォルトの名無しさん :01/09/10 12:57
- >>99-100
すでにMakefileのOBJSにはdigest.oは入ってなかったみたいだ。
従ってこのままではたとえconditionにしても使えん。
- 102 :デフォルトの名無しさん :01/09/10 13:01
- 本当だ。SRCSには残ってるのに。
じゃあやっぱりバッサリ削りましょう。
- 103 :デフォルトの名無しさん :01/09/10 13:02
- >>94
cvs見ると、6411さんが8/30に作ったようだが
- 104 :デフォルトの名無しさん :01/09/10 13:07
- >>85は、#if 0で囲うと、初期化されていないメモリを参照して、どうなるかわからない。
if (1 <= path_depth ...) {
#if 1 /* #ifndef USE_PATH_DIGEST */
html_error(ERROR_NOT_FOUND);
#endif
・・・
}
って感じにしてくれ。
理由は、皆が言うように、後半で参照されている部分が#if 0で(仮に)殺してあるため。
Expire関係の#if の#else節も生きているようだが、
これもいらない。
もうひとつ、細かいことだが
mainの最初の方に
if (st == 1 && to == 1)
zz_nf[0] = '\0';
というのがあるが、
CHUNK_ANCHORで1-50へのリンク(>>nn)にnofirst=trueがつくことを考えると、
if (st == 1) /* レス1から表示する場合はnofirst=falseにする */
zz_nf[0] = '\0';
の方が良いだろう。
- 105 :デフォルトの名無しさん :01/09/10 13:07
- 前スレですでにこういう話が出てた。
850 名前:デフォルトの名無しさん 投稿日:01/09/09 03:27
>♯6411氏
digest.[ch]いらなくなったのなら、MakefileのSRCSから消してちょうだい。
あと、datindex.cの中身全部を#ifdef USE_INDEXで括っておくように。(w
- 106 :デフォルトの名無しさん :01/09/10 13:10
- >>104
> >>85は、#if 0で囲うと、初期化されていないメモリを参照して、どうなるかわからない。
これはどういうこと?
fnameもzz_fileLastModもその前後で設定されているが。
- 107 :デフォルトの名無しさん :01/09/10 13:12
- ダイジェクト削除するならr2chhtml.h後半の
/* スレダイジェスト用HTML */
/* スレインデクス用HTML */
も不要。
- 108 :デフォルトの名無しさん :01/09/10 13:14
- >>106
失礼。その通りだった。
後でエラーになるね。
- 109 :デフォルトの名無しさん :01/09/10 13:22
- >>52修正
#ifdef CAUTION_FILESIZE 直後の行を変更
if (zz_fileSize > MAX_FILESIZE - CAUTION_FILESIZE * 1024) {
↓
else if (zz_fileSize > MAX_FILESIZE - CAUTION_FILESIZE * 1024) {
- 110 :デフォルトの名無しさん :01/09/10 13:26
- >>109
あてといた
- 111 :デフォルトの名無しさん :01/09/10 13:37
- >>104でも言ってるけどEXPIRESは全廃したんだから
これはいらないんじゃない?
char expires_str[1024];
#if 0
/* XXX これはウソ、Expires: は、
現在時間を基準にすべきである */
get_lastmod_str(expires_str, zz_fileLastmod + 5);
#else
{
/* ためしに廃棄期限をちょっと先に設定してみる */
time_t nw;
time(&nw);
get_lastmod_str(expires_str, nw + 10);
}
#endif
- 112 :デフォルトの名無しさん :01/09/10 13:39
- >>109より、
>>61の後半の形式の方がいいと思う。
>>109だと、レスが930まで来た時に突然読めなくなる可能性あり。
- 113 :デフォルトの名無しさん :01/09/10 13:40
- >>111
expires_strの宣言とともに削除した
- 114 :デフォルトの名無しさん :01/09/10 13:43
- >>112
賛成。
325KB
新着レスの表示
スレッドリストへ戻る 全部 前100 次100 最新50
0ch BBS 2004-10-30