■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50

read.cgi改良スレッド 2

543 :デフォルトの名無しさん :01/09/21 04:44
>>540,542
HTTP_HOSTが使える時はそちらを使うようにした。

掲示板に戻るは、できるだけ/板名/を使うようにした。
path形式で/iのバグ修正
ALL_ANCHORの記述移動

544 :デフォルトの名無しさん :01/09/21 05:02
>>528
#ifdef PREV_NEXT_ANCHOR
#define R2CH_HTML_IMODE_TAIL(path, next) \
" <a href=" path ">次" next "</a>"
#define R2CH_HTML_IMODE_TAIL2(path, ls) \
" <a href=" path ">最新" ls "</a><br>\n"
#else
#define R2CH_HTML_IMODE_TAIL(path, next) \
" <a href=" path ">次の" next "レス</a>"
#define R2CH_HTML_IMODE_TAIL2(path, ls) \
" <a href=" path ">最新レス" ls "</a><br>\n"
#endif

#ifdef PREV_NEXT_ANCHOR
#define R2CH_HTML_IMODE_HEADER_1(title, board, alllink) \
"<title>" title " </title>" \
"</head>" \
"<body bgcolor=#efefef text=black link=blue alink=red vlink=#660099>" \
"<a href=\"" board "\">■掲示板に戻る■</a>" \
" <a href=" alllink ">1-</a>"

#define R2CH_HTML_IMODE_HEADER_2(latestlink, ls) \
" <a href=" latestlink ">最新" ls "</a>"
#else
#define R2CH_HTML_IMODE_HEADER_1(title, board, alllink) \
"<title>" title " </title>" \
"</head>" \
"<body bgcolor=#efefef text=black link=blue alink=red vlink=#660099>" \
"<a href=\"" board "\">■掲示板に戻る■</a>" \
" <a href=" alllink ">レスを最初から読む</a>"

#define R2CH_HTML_IMODE_HEADER_2(latestlink, ls) \
" <a href=" latestlink ">最新レス" ls "</a>"
#endif

545 :デフォルトの名無しさん :01/09/21 05:13
i-mode版で不要な</dl>が出力されるバグの修正。

if (!is_imode())
を、dat_out()内の
pPrintf(pStdout, R2CH_HTML_PREFOOTER);
の前に付ける。

今はi-mode版ではcan_simplehtml()がfalseを返すから
関係ないけどout_simplehtml()も修正しておいたほうが
安全かも。

546 :デフォルトの名無しさん :01/09/21 05:44
>>544-545
当てた

547 :デフォルトの名無しさん :01/09/21 06:14
パス仕様で倉庫落ちしたスレッドのURLを指定したとき、
「そんな板orスレッドないです。」の画面でリンクが切れる。
http://teri.2ch.net/test/read.cgi/accuse/990769720/
存在しないスレの場合の「過去ログ倉庫」へのリンクも同様。
http://teri.2ch.net/test/read.cgi/accuse/990769721/
とりあえず報告だけ。

548 :デフォルトの名無しさん :01/09/21 06:23
>>547 修正。
#define R2CH_HTML_ERROR_5_HTML \
"隊長! 過去ログ倉庫で、<a href=\"%s%s\">スレッド %s.html</a> を発見しました。\n"

#define R2CH_HTML_ERROR_5_DAT \
"隊長! 過去ログ倉庫で、<a href=\"%s%s\">スレッド %s.dat</a> を発見しました。<br>" \
"<b><font size=+1 color=red>が</font></b>、しかしまだ html化されていません。残念、待つしかない。\n"

#define R2CH_HTML_ERROR_5_NONE \
"<a href=\"%s" KAKO_DIR "\">過去ログ倉庫</a>にもありませんでした。<br>" \
"問い合わせても見つかる可能\性はほとんどありません。\n"

pPrintf(pStdout, R2CH_HTML_ERROR_5_HTML,
create_bbs_path(), doko, tmp);

pPrintf(pStdout, R2CH_HTML_ERROR_5_DAT,
create_bbs_path(), doko, tmp);

pPrintf(pStdout, R2CH_HTML_ERROR_5_NONE,
create_bbs_path(), zz_bs);

549 :デフォルトの名無しさん :01/09/21 06:25
create_bbs_path()は関数名を変更したほうがいいかも。

550 :デフォルトの名無しさん :01/09/21 06:41
>>548
当てた

551 :デフォルトの名無しさん :01/09/21 06:47
要望なのですが。

鯖移転した板のスレへのリンクをクリックしたとき、現状、
http://news.kakiko.com/mentai/へ飛ばされますよね。
これを、倉庫落ちなどと同様に、新鯖のスレへ飛ばすようには
できないでしょうか?
bbs名はほとんど変わらないと思うので。

夜勤さん(鯖側)の範疇なのかな。

552 :デフォルトの名無しさん :01/09/21 06:57
>>477
dat_out_raw()を修正:
pPrintf(pStdout, " %d/%dK\n", end - begin, MAX_FILESIZE / 1024);

553 :デフォルトの名無しさん :01/09/21 07:16
>>552
当てた。

あとcreate_parent_link()などを毎回呼ぶのをやめて
一回だけグローバル変数に作って使うようにした。

554 :デフォルトの名無しさん :01/09/21 07:58
>>nnリンクを削除する場合に余分な"</a>"が残ってしまっていたバグ修正。

555 :デフォルトの名無しさん :01/09/21 08:28
dat_out()とかのlevel引数って使ってないみたいだけど、
バッサリ消してもいいんでしょうか?

556 :デフォルトの名無しさん :01/09/21 08:46
>>555
#ifdef USE_INDEXで囲むくらいにしておいたほうがいいかも。
関数の引数として渡されてる部分は難しいけど。

557 :デフォルトの名無しさん :01/09/21 08:48
USE_INDEXってのは.idxファイルのサポート用で
ダイジェスト表示とは直接関係ないんだっけ?
だとすると #ifdef USE_INDEX は変だな。
やっぱりバッサリ逝くか?

558 :デフォルトの名無しさん :01/09/21 09:12
>>557
#ifdef USE_INDEXで囲った。
USE_INDEXが有効ならダイジェストを呼び出すようになってたので。

559 :デフォルトの名無しさん :01/09/21 10:15
sageのメールリンク最適化。

[r2chhtml.h]
#ifdef CREATE_NAME_ANCHOR
(中略)
#ifdef SAGE_IS_PLAIN
#define R2CH_HTML_RES_SAGE(n, l, nm, d, t) \
"<dt>" n " <a name=" l ">" R2CH_HTML_NAME "<font color=blue><b>" nm " </b></font></a> " R2CH_HTML_DATE d "<dd>" t "<br><br>"
#else
#define R2CH_HTML_RES_SAGE(n, l, nm, d, t) \
"<dt>" n " " R2CH_HTML_NAME "<a name=" l " href=mailto:sage><b>" nm " </b></a> " R2CH_HTML_DATE d "<dd>" t "<br><br>"
#endif

#else
(中略)
#ifdef SAGE_IS_PLAIN
#define R2CH_HTML_RES_SAGE(n, l, nm, d, t) \
"<dt>" n " " R2CH_HTML_NAME "<font color=blue><b>" nm " </b></font> " R2CH_HTML_DATE d "<dd>" t "<br><br>"
#else
#define R2CH_HTML_RES_SAGE(n, l, nm, d, t) \
"<dt>" n " " R2CH_HTML_NAME "<a href=mailto:sage><b>" nm " </b></a> " R2CH_HTML_DATE d "<dd>" t "<br><br>"
#endif

#endif

[read.c]
#ifdef SAGE_IS_PLAIN (1箇所だけ)を削除

SAGE_IS_PLAINはいちおう残してみたけどオンにしたほうが
とくなことって何もない気がする。

560 :デフォルトの名無しさん :01/09/21 10:27
>>559
これってsageのために囲む " を取っただけ?
圧縮率にも、cgiのバイナリサイズにも逆効果な気がするなあ。

561 :デフォルトの名無しさん :01/09/21 10:40
>>560
じゃあ危なそうな文字( " とか空白とか)を含んでない
ときはいつも " を削除するというのはどう?

562 :デフォルトの名無しさん :01/09/21 11:28
あちこちにあるtarget="_blank" の「"」って消せるんでない?

563 :デフォルトの名無しさん :01/09/21 11:36
_ は " で囲まなくても安全な文字じゃないんだけどすでに #
とか囲まないで書きまくってるしいまさらそんなこと気にしても
確かに仕方ない

564 :デフォルトの名無しさん :01/09/21 11:39
HTML 2.0/3.2の仕様上は、 " で囲まなくてもいい文字は
英数字と - と . だけ。
現実のブラウザはもっとはるかにルーズだけど。

565 :デフォルトの名無しさん :01/09/21 12:10
HTML 4.0(とそれ以降)の仕様上は、 "" で囲まなくてもいい文字は
英数字と . と - と _ と : の四つ。
現実のブラウザは以下同じ。

566 :デフォルトの名無しさん :01/09/21 13:29
>>553
>あとcreate_parent_link()などを毎回呼ぶのをやめて
最大2回しか呼ばないんだけど・・・。
使わないときは、初期化もしないんだけど・・・。

567 :デフォルトの名無しさん :01/09/21 16:05
>>562
r2chhtml.hでTARGET_BLANK, TARGET_BODYにマクロ定義した上で
「"」を消してみた。
駄目ならこのマクロ定義直してくれ。

568 :デフォルトの名無しさん :01/09/21 16:47
効率とはまったく関係ないけど
REFERDRES_SIMPLE のスペルミスが気になる…
×REFERDRES_SIMPLE
○REFEREDRES_SIMPLE

569 :デフォルトの名無しさん :01/09/21 17:48
開発中のみ、平常時間帯でも混雑時の出力をするquery、
Faketime=true(あえて大文字)を提案したいが、どうだろう?
ローカルで確認する時もSETTING_FILEのLIMITを変更するのが面倒だし、
逆はともかく、制限が強くなるだけだから、
そのまま実験サーバーに上げられても不都合はないと思うので。

もしやるなら、zz_GetEnv()の最後でisbusytimeを設定した後に、
#ifndefNDEBUG
 {
  char fake[1024];
  GetString(zz_query_string, fake, sizeof(fake), "Faketime");
  if (*fake == 't')
   isbusytime = 1;
 }
#endif
(read2ch.hに記述するような内容ではないと思う)

570 :デフォルトの名無しさん :01/09/21 17:56
それだと、すべてのリンクにFaketime=trueが付くようにしないと
ちゃんと確認できないと思うが…
REFERDRES_SIMPLEとか確認できなさそうだし。
常に混雑時間帯のCGIとか別ディレクトリに用意しておいたら?

571 :デフォルトの名無しさん :01/09/21 18:07
いや、嫌なら別に無くてもかまわないけどね。
開発時に出力をCUT&TRYする時に確認を楽にしたいだけだから。
別CGI作って置いといても、read.cをいじっている最中には無意味だし。

572 :571 :01/09/21 18:31
「嫌なら」って言い方良くなかった。
「自分以外に需要がなければ」ってことです。

どうしても必要だと思ったら、同意など求めずに勝手にcommitしてますが、
自分の判断だけで決めるのは避けたいので。

573 :デフォルトの名無しさん :01/09/21 18:41
>>572
HTTP_HOSTの最後が:80だったら混雑時にするってのでいかが。
http://localhost:80/ とかでアクセスすればいい。

int IsBusy2ch(void)
{
#if 1
 if (zz_server_name && strstr(zz_server_name, ":80") ) return 1;
#endif

574 :571 :01/09/21 19:09
どうも、「別のディレクトリに」を勘違いして解釈していた気がする。
テスト用にLIMIT_AMやLIMIT_PMを変えた板を用意して、
bbs=techbusyのような形式でリクエストしてテストすれば、
read.cには手を加えずとも、出力確認程度なら
Faketimeとほぼ同様の効果が得られる、という気がしてきた。
ということで、この提案は取り下げます。

ところで、>>475のHTTP1.1判別なのだが、
もし、If-None-Matchを付加するのがHTTP1.1クライアントのみとしても、
クライアントがHTTPのVer1.0か1.1のどちらでGETしているかを
CGI側で判別することはできるのだろうか?
ちょっと調べた限りではみつからなかった。

575 :デフォルトの名無しさん :01/09/21 19:17
>>574
IE5.5 : SERVER_PROTOCOL="HTTP/1.1"
NN4.78 : SERVER_PROTOCOL="HTTP/1.0"
telnetでGETのみ(HTTP指定なし) : SERVER_PROTOCOL="HTTP/0.9"

いや、ちょっといれ忘れたんだけど、0.9かよ。
無理に調べて対応する程のことってあったけ?

576 :デフォルトの名無しさん :01/09/21 19:47
0.9は無視していいと思う。
せっかくタグ吐いてもApacheに全部捨てられちゃうだろうし。

577 :デフォルトの名無しさん :01/09/21 19:53
知らんかった。
SERVER_PROTOCOLって、Apacheがレスポンスで返すバージョンのことだと思ってた。
どうもありがとう。

578 :デフォルトの名無しさん :01/09/21 19:54
で、HTTP/の指定が無いと0.9扱いになると。

579 :デフォルトの名無しさん :01/09/21 20:17
一応ソース。
http://hoohoo.ncsa.uiuc.edu/cgi/env.html
・SERVER_PROTOCOL
The name and revision of the information protcol this
request came in with. Format: protocol/revision

580 :デフォルトの名無しさん :01/09/21 21:08
みなさんお疲れさまです。

http://teri.2ch.net/test/read.cgi?bbs=accuse&key=988761989&st=768
批判要望板でこのような質問がありました。
http://cocoa.2ch.net/test/read.cgi?bbs=cg&key=975777954&st=265&to=265
http://cocoa.2ch.net/cg/dat/975777954.dat
このスレッドの265レス目が[ここ壊れています]になっているというものです。
datファイルを確認すると、265行目は次のようになっていました。
<><>2001/03/09(金) 00:36<> <>
名前欄、本文欄ともに半角スペースだけのデータです。

現在のbbs.cgiでは、本文欄のデータをdatファイルに送る際に
各行の先頭と末尾に半角スペースを加えています。
しかし、[ここ壊れています]となっているレスが書かれた頃はまだそのような
データの追加はされておらず、本文欄が半角スペースならdatファイルの本文の部分も
半角スペースのままだったと思います。

古いbbs.cgiの頃に書かれた「本文が半角スペースだけのレス」の全てが
[ここ壊れています]になるのかどうかは確認できていませんが、
もしread.cgiの方で本文半角スペースのレスを読み込めないようになっているのでしたら
その点を改良できませんでしょうか。
よろしくお願い致します。

581 :デフォルトの名無しさん :01/09/21 21:12
#define R2CH_HTML_CSS_TYPE "<meta http-equiv=Content-Style-Type content=\"text/css\">"
インラインスタイルを使ってないからこれは不要。

582 :デフォルトの名無しさん :01/09/21 21:59
>>580
対処した

583 :デフォルトの名無しさん :01/09/21 22:34
READ_KAKOを追加
 read.cgiで過去ログ、dat落ちを読む
指定方法
 read.cgi/tech/kako/nnn/ または read.cgi?bbs=tech&key=kako/nnn
 read.cgi/tech/temp/nnn/ または read.cgi?bbs=tech&key=temp/nnn

現在はONにしてあるが、転送量が増加すると思うので
本番導入前に夜勤さん★に考えてもらうこと。

ChangeLog読んでから導入してもらいましょう。

584 :デフォルトの名無しさん :01/09/21 23:02
以前は
bbs=tech&key=../kako/nnn/nnnmmm
で読めたものを
負荷の問題から止めてあるだけでしょ。

dat_readのhtml_error()を呼ぶ3つ目ifを削れば、
kakoのサブディレクトリまで指定しないといけないけど、
そのまま読めるはず。

585 :デフォルトの名無しさん :01/09/21 23:18
READ_KAKO conditionを設けるのはいいと思うが、
理由があって読めなくしてあるのだから、
OFFにしておくべきだと思う。

PATH仕様への対応も、
「過去ログ読む程度にそこまでやる必要はあるの?」
という気がする。

でも、ディレクトリが移動して
../kako/でアクセス出来なくなる場合もあるから
その場合に備えて対応はしておくのはいいかもね。

586 :デフォルトの名無しさん :01/09/21 23:34
まあ、>>206 >>237 みたいな話もあるし、
過去ログの指定先がどこになるかわかんないから、
kako/nnnで統一できた方がいいでしょ。

PATHで、../kako/を指定されるのは困るってのもある。
read.cgiが扱うなら、提供するかもしれない。

どれもこれも夜勤さん次第。

587 :デフォルトの名無しさん :01/09/21 23:46
そういえば、st=などを「過去ログを発見しました」に透過的に渡して、
転送量を節約しようって話もあったね。

588 :名無し :01/09/21 23:49
>>582さん
ありがとうございます。
新バージョン導入待ちですね、、

589 :デフォルトの名無しさん :01/09/21 23:52
FTP鯖内のpub/MP3ってなんだろうね?

590 :デフォルトの名無しさん :01/09/21 23:58
だからOFFにしとけっての。

591 :デフォルトの名無しさん :01/09/22 00:04
>PATHで、../kako/を指定されるのは困るってのもある。
>>585はそこまでする必要があるのかって話でしょ。

>どれもこれも夜勤さん次第。
だから、今まで過去ログをあえて閲覧できないようにしていたんでしょ。

592 :デフォルトの名無しさん :01/09/22 00:35
READ_KAKOは、必要があれば夜勤さんがONにすればよいだけなので、
現状に合わせてOFFにします。

593 :デフォルトの名無しさん :01/09/22 01:42
>>587
READ_KAKO_THROUGHとして実装した。

>>591
やるからには、ちゃんとやる。
ALWAYS_PATHを採用し、全読み以外を提供するならやらない訳にいかない。

html化された過去ログには広告ついてるやん。どうすんだ。

594 :デフォルトの名無しさん :01/09/22 01:52
意味がわかりません

595 :デフォルトの名無しさん :01/09/22 02:12
>>594
わからないのは、↓のことかな。
>ALWAYS_PATHを採用し、全読み以外を提供するならやらない訳にいかない。

read.cgi?bbs=tech&key=../kako/999/999xxxで表示したときに
ALWAYS_PATHだと、中のリンクが使い物にならなくなるの。

全部読むことしか提供しなければ、リンクが機能しなくても
なんとかなるけど、範囲指定を提供するならリンクも機能して
欲しいよね。

596 :デフォルトの名無しさん :01/09/22 04:42
以前、過去ログがread.cgiで読めた頃から
>read.cgi?bbs=tech&key=../kako/999/999xxxで表示したときに
>中のリンクが使い物にならなく
なってたけど、
苦情は見たことなかったな。
html化した後のリンクの苦情はあったね。
アンカー振って欲しいって。

kakoが読めなくて苦情が出た事は知ってるけどさ。

597 :デフォルトの名無しさん :01/09/22 05:27
こんなの作った。read2ch.hはいじってない。

△CUT_TAIL_BLANK
直前の文字がShift_JISの1バイト目であるかを厳密に判定する事により、
名前欄とメール欄の末尾の空白、及び<br>タグ直前の空白をほぼ消滅させる。

▲STRICT_ILLEGAL_CHECK
(意図的な)文字化け防止のため、
'<',"http://"の直前の文字がShift_JISの1バイト目かを厳密に判定し、
必要ならば空白を加える。(fusianasanのbold化け対策と似た処理)
コスト(負荷)がかかる割に転送量減少には貢献せず、
仮に文字化けしてもその部分だけで留まり、大きな影響はないため、OFF推奨。

/* 名前末尾・メール末尾・<br>タグ前・レス末尾の空白を
(可能なら)全て削除する */
#defineCUT_TAIL_BLANK

/* '<',"http://"の直前の文字を調べ、必要ならば空白を加える。 */
/* #defineSTRICT_ILLEGAL_CHECK */

598 :デフォルトの名無しさん :01/09/22 06:09
kakoの読み出しとtempの読み出しは別々のconditionに
すべきだと思う。現在kakoは読めるけどtempはdatさえ
読めないのは理由のないことではない。
もちろんデフォルトは両方ともOFF。

599 :デフォルトの名無しさん :01/09/22 06:38
>>598 変更点。
▲READ_TEMP
(READ_KAKO定義時のみ有効)
html化待ちのdatもread.cgiで読む。

先頭に追加:
#ifndef READ_KAKO
#undef READ_TEMP
#endif

main():
#ifdef READ_KAKO
if (read_kako[0] == 'k') {
char buf[256];
kako_dirname(buf, zz_ky);
sprintf(fname, KAKO_DIR "%.20s/%.20s.dat", zz_bs, buf, zz_ky);
#ifdef READ_TEMP
} else if (read_kako[0] == 't') {
sprintf(fname, TEMP_DIR "%.20s.dat", zz_bs, zz_ky);
#endif
} else
#endif

html_error():
#ifdef READ_TEMP
pPrintf(pStdout, R2CH_HTML_ERROR_5_TEMP,
zz_cgi_path, zz_bs, "temp/", tmp, tmp);
#else
pPrintf(pStdout, R2CH_HTML_ERROR_5_TEMP,
tmp);
#endif

600 :デフォルトの名無しさん :01/09/22 12:45
>>599 当てた
>>597 config.txt, ChangeLog, read2ch.h にも反映した

601 :デフォルトの名無しさん :01/09/22 15:50
>>593
READ_KAKO_THROUGHの実装ってcvsに入ってないみたいな。

602 :デフォルトの名無しさん :01/09/22 16:20
>>601
CUT_TAIL_BLANK作った人が消したようだ。
入れなおし中

603 :602 :01/09/22 17:05
>>602
READ_KAKO_THROUGH復活&整理した

604 : ◆D69Zsbfg @夜勤 ★ :01/09/22 18:18
いつも お世話になっています。
区切りのよさそうなところで、また新しい version を入れて見たいのですが、
どんなもんでしょうか?

605 :デフォルトの名無しさん :01/09/22 18:45



Rubyはクソです。ゴミ箱逝きです。

いじょ
この発言をコピペしていただければ幸いです。

606 :デフォルトの名無しさん :01/09/22 18:48
>>605は誤爆か?

607 :デフォルトの名無しさん :01/09/22 19:09
>>604
お疲れ様です〜
区切りは良いんじゃないでしょうか。

5.22からの大まかな変更は:
・i-mode関連の修正複数
・rawモードの末尾に余分な出力があったバグ修正, 結果書式に上限サイズ追加
・行末の空白を削除
・過去落ち画面のリンクがおかしかったバグ修正
のほか、新機能として:
ALWAYS_PATH: read.cgiからリンクされるレスへのリンクがすべてパス形式になる
が有効になっています。
また、
READ_KAKO: 過去ログをread.cgiで参照可能にする
READ_TEMP: 過去落ち前datも参照可能にする
READ_KAKO_THROUGH: 範囲指定を過去落ち/過去落ち前にも継承する
という新機能もありますが、こちらは無効になっています。

詳しい修正内容はChangeLogをご覧下さい。

608 :592 :01/09/22 19:29
>>601-603
申し訳ないです。ごめんなさい。

609 : ◆D69Zsbfg @夜勤 ★ :01/09/22 20:20
じゃ 入れよーと思います。
どこから 落とせばいいのかな?

610 :デフォルトの名無しさん :01/09/22 20:23
>>609
いつもの
http://www.gedoh.org/aki/2ch/current/bbs/
が復活してま〜す

611 : ◆D69Zsbfg @夜勤 ★ :01/09/22 20:25
了解。

612 : ◆D69Zsbfg @夜勤 ★ :01/09/22 20:31
choko に read,.cgi ver 5.23 いれましたー。

613 :デフォルトの名無しさん :01/09/22 20:33
http://choco.2ch.net/dancesite/SETTING_R.TXT

FORCE_304_TIME=0
とか書いておくと、この板のみ実況対策機能が無効になります。

614 :デフォルトの名無しさん :01/09/22 20:34
cvsにtag YAKIN20010922 打っときました

615 : ◆D69Zsbfg @夜勤 ★ :01/09/22 20:37
>>613
うーむ、、、
なんせ 一秒間に数十回とか呼ばれる cgi なんで、極力ファイルの参照は
行いたくないというのが本音だったりします。

そのへんは、今後も考えなきゃならないところですが、、

616 :デフォルトの名無しさん :01/09/22 20:40
なるほど…
次バージョンからはUSE_SETTING_FILEはデフォルトで
オフにしておきましょうか…

617 :デフォルトの名無しさん :01/09/22 21:11
>>613-616
こんなもんでも作ってごく一部のみsettingを変えられるようにしましょう。
実況板といえども、FORCE_304_TIME=0はやめといた方がいいと思う。

[read2ch.h]
#define SPECIAL_SETTING \
 { "saku", "LINKTAGCUT=0" }, \
 { "dancesite", "FORCE_304_TIME=3" },

[read.c]
struct _setting {
 char *board_name;
 char *settings;
} special_setting[] = {
 SPECIAL_SETTING
 { NULL, },
};

618 :デフォルトの名無しさん :01/09/22 21:26
ttp://piza2.2ch.net/news3/kako/100/1000336331.html
予想はしていたけど、過去ログが kako/100/ に逝ってるyp。

619 :デフォルトの名無しさん :01/09/22 21:33
http://piza2.2ch.net/test/read.cgi/news3/1000336331/
さらに倉庫を見つけるのに失敗してるyp。

620 :デフォルトの名無しさん :01/09/22 21:34
SETTINGFILEをOFFにすると、
メモリ参照が即値になり、ファイルを探さなくなるので
負荷は少し減りますね。
板別に設定が出来なくなってしまうので、
鯖別に設定を持つだけになってしまうのと、
状況をみて外から簡単に変更するというのが出来なくなるのがデメリットですか。

でも、ファイルの負荷を考えるなら、まず、mmapのパラメータ、
 zz_mmap_size = zz_fileSize + 0x10000,
 PROT_READ | PROT_WRITE,
 MAP_PRIVATE,
を変更するほうが先だと思います。

621 :名無し :01/09/22 21:35
iモードの動作を何とかしてください。
機能をWEB版と同じにして欲しい。

622 :デフォルトの名無しさん :01/09/22 21:36
板別の設定は>>617のような方法で何とか…
簡単に変更できなくなるのは同じですが今まで一度も
使われていないようですし。

>でも、ファイルの負荷を考えるなら、まず、mmapのパラメータ、
> zz_mmap_size = zz_fileSize + 0x10000,
> PROT_READ | PROT_WRITE,
> MAP_PRIVATE,
>を変更するほうが先だと思います。

どのように変更すればいいんでしょうか?

623 :名無し :01/09/22 21:43
あとCSS版を早く入れて欲しいです。
ブラウザによってAAがズレると言ってました。

624 :デフォルトの名無しさん :01/09/22 21:44
AAのズレとCSSは関係ないと思いますが…。
CSS使用はfusianasanや<a name>の対応に問題があって
無効にされています。過去ログ参照。

625 :デフォルトの名無しさん :01/09/22 21:45
>>621
どの機能が欲しいんですか?
全機能だと画面につらいと思うんですが。

>>623
CSS版は問題があって無効にしてるんじゃなかったっけ。

626 :デフォルトの名無しさん :01/09/22 21:53
CHUNK_ANCHORをi-modeでやったら「1- 11- (以下100個続く)」
ということになってほとんど不可能だと思われ
RELOADLINKは実装済み。
したがってPREV_NEXT_ANCHORでは。

627 : ◆D69Zsbfg @夜勤 ★ :01/09/22 22:03
ひとつ 提案なんですが、英語版とか何とか語版とかつくれたらなー
なんて考えています。

各文字列を #define とかしちゃって、

おひまな時でよいので、そんなのが実装できるように ちよっと考えてみてください。
で、 bbs.cgi で 二バイト系の文字はじけば、英語のみの板ができるのでは?
と思っています。 英語でお祭り 2ちゃんねる vs Yahoo.com とか、

628 :デフォルトの名無しさん :01/09/22 22:07
文字列はすでにほとんどr2chhtml.hに追い出されてるから
あとは英語版を用意すればいいかな?

629 :デフォルトの名無しさん :01/09/22 22:10
>>619
5.22でpath形式の時のバグです。
5.23では直っているはず。

630 :デフォルトの名無しさん :01/09/22 22:13
>>622
間違いなく変更してよいのが、
 zz_map_size = zz_fileSize,
 PROT_READ,
の2つです。
(他のプロセスによって書きかえられなければ)オーバーランしないように
なっているし、書き換えもしていないはずです。

で、あぼーんとの関係で若干問題があるのが
 MAP_SHARED
だけど、あぼーんとの関係で
・サイズが詰められたことで、行末の判定を誤る
・その結果、行末が見つからずにオーバーランする
という可能性が僅かにあるものの、
MAPしている間に書き換えが起こるのは滅多に無いと思うし、
それが起こる度合いを考えれば、
その時は素直に500エラーで良いのではと思います。
(実は、負荷的には、これが一番効果があると過去ログにあった気もします)

631 :デフォルトの名無しさん :01/09/22 22:17
>>629
いや、そのバグはリンクは出るけど正しくリンクしていない
というものだったはず。
リンクそのものが出ないというのは別のバグでしょ。

632 :デフォルトの名無しさん :01/09/22 22:24
gzip_flagが0の時は、setvbuf系を使って、
出力系のwrite回数を減らすのも手だね。
ZLIBではあまり効果がないかな。

633 :デフォルトの名無しさん :01/09/22 22:25
1が表示されないのはともかく、次の10レスが表示されない。
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=1&to=10&imode=true&nofirst=true
http://piza2.2ch.net/test/read.cgi/tech/1000035521/1-10in
比較対象
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=1&to=10&imode=true
http://piza2.2ch.net/test/read.cgi/tech/1000035521/1-10i

最新版では直ってるかな?

634 :デフォルトの名無しさん :01/09/22 22:29
>>633 直ってないね。
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/1-10in
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/1-10i

635 :デフォルトの名無しさん :01/09/22 22:36
>>633-634
それは、st=1でnofirst=trueの時に1が表示されないのが原因
1-10が内部で2-10扱いになり、次10が出なくなっている。

&st=1&to=10&imode=true&nofirst=true
どこからか、↑みたいにリンクされてるの?

636 :デフォルトの名無しさん :01/09/22 22:37
名無し娘。 ◆vP.bOZFQさん最近見かけないな…
そろそろまとめをきぼーんしたいけど

637 :デフォルトの名無しさん :01/09/22 22:38
>>635
11〜20の10個でもやはりnofirstだと次10が出てないみたい。
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/11-20in
比較用: nofirstなし
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/11-20i

638 :デフォルトの名無しさん :01/09/22 22:41
iモード用じゃなければ出てくるね
やっぱりバグでは
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/11-20n
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/11-20

639 :イラストに騙された名無しさん :01/09/22 22:42
http://choco.2ch.net/test/read.cgi/dancesite/1001154756/11-in
実際には 11個 表示されますね。そこらへんがポイントかなぁ・・・

640 :デフォルトの名無しさん :01/09/22 22:44
ところで順番は in でいいの?
5.22だと「&imode=true&nofirst=true」の順だったけど
5.23では「ni」になってる。
5.23はURLの生成を集中的に行ってるからたぶん一貫
していて問題ないとは思うけど

641 :デフォルトの名無しさん :01/09/22 22:53
英語版は、まだ誰も作り始めてないだろうけど、
r2chhtml.hがこれ以上#ifdefになるのはちょっと嫌なので、
read.cで
#ifdef ENGLISH
#include "r2chhtml_en.h"
#else
#include "r2chhtml.h"
#endif
をきぼー。

642 :デフォルトの名無しさん :01/09/22 22:53
>>637-638
次10は、混雑時の100レス制限と同じ方式で出している。
表示した個数で出すか出さないかを決めているのだから、
nofirst=trueでは、1個減って出なくなる。

imode用には、終点を指定しない方がいいね。
/1-i とか /11-ni とかに。

でも、nofirst=trueを付けるのは誰?
read.cgiは最新とか新着にしか付けてないはずなんだけど。

325KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30