■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50
read.cgi改良スレッド 2
- 371 :370 :01/09/16 18:03
 -  平常時の最新50をつける位置が逆だった。 
 続きがある時につけなくちゃだめだね。 
 両方につけてもいいけど。 
 
- 372 :370 :01/09/16 18:07
 -  いや、371が間違いだった。 
 ちゃんと最新50は上段についてる。 
 自分でも間違えるくらいだから、使いにくいか。 
 
- 373 :125 :01/09/16 18:42
 -  CHUNK方式が最も効率よさそうなんで、少し考えてみました。 
 混雑時の100レス制限との噛み合わせを考えて、CHUNKは100単位。 
  
 上:■掲示板に戻る■ 全部 CHUNK_ANCHOR 最新50 
 下:[続きを読む/新着レス]///掲示板に戻る 全部 前100 次100 最新50 
 混雑時 
 上:■掲示板に戻る■ CHUNK_ANCHOR 最新50 
 下:[続きを読む 最新50/新着レス] 
  
 ※混雑時は表示内への>>リンクははずす。 
 ※続きを読む/新着レスは、最後まで一気読み。 
 
- 374 :125 :01/09/16 22:30
 -  意見くれage 
 
- 375 :名無し娘。 ◆vP.bOZFQ  :01/09/16 23:14
 -  >>373-374 
 混雑時間帯には「続きを読む」に100レス制限つくんですよね? 
  
 平常時について「続きを読む」「次100」「最新50」がなんかかぶってるような気が 
 するんだけど、どれかをなくすとしっくりいかなく、迷っております。 
  
 混雑時間帯は 
 上:■掲示板に戻る■ CHUNK_ANCHOR 最新50 
 下:続きを読む 最新50 
 でOKだと思います。 
 
- 376 :125 :01/09/16 23:57
 -  >>375 
 混雑時100レス制限はそのままです。 
 平常時の「次100」は、見た目の都合ということで。 
 害はなさそうですから。 
  
 上下のアンカーは、nofirst=trueにしないでいいんですよね。 
 転送量的には、nofirst=trueですけど。 
  
 上に前/次よりもCHUNK_ANCHORを推奨ってことで実装してみます。 
 
- 377 :名無し娘。 ◆vP.bOZFQ  :01/09/17 00:12
 -  >>376 
 はい。いいと思います。 
 
- 378 :名無し娘。 ◆vP.bOZFQ  :01/09/17 00:49
 -  実装・検討待ちの案一覧 
  
 ETag 
  >>137 >>143 >>167-169 >>173 >>229-232 
  
 HEADリクエストに対しては Last-Modified と Content-Length を吐くだけにする 
  >>219 >>226 
  
 URL記述に対するリンク設定も時間帯によらせる 
  http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=817&to=817&nofirst=true 
  
 「名前:」も「:」だけにする 
  
 </dl>するタイミング 
  >>126 
  
 #define Katjusha_Beta_kisei されていない(元はdefineされていた) 
  
 dat,temp,kako 
  dat,temp,kako を read.cgi で読む 
   >>203-206 >>208 
  datの一部についてのLastModを求める 
  ツール作者さんに対応お願い 
   * raw=xxx.yyy の形式でリクエスト。 xxx=最終レス番号, yyy=そのときのサイズ。 
   * 一行目はステータス: 
   * [+OK zzz] の場合は差分のみを送信する。zzzは差分サイズ。 
   * [-INCR] (Incorrect)の場合はすべてのデータを送信する。 
   * [-ERR (テキスト)]の場合はなんかエラーが起きた。 
  
 condition一覧/SETTING_R.TXT記述一覧 
  http://www.gedoh.org/aki/2ch/current/bbs/config.txt 
  追加すべきもの 
   CAUTION_FILESIZE xx, MAX_FILESIZE_BUSY (xx)(デバッグ用) 
   SEPARATE_CHUNK_ANCHOR(CHUNK_ANCHORが必要), CHUNKED_ANCHOR_WITH_FORM(CHUNK_ANCHOR定義時にのみ有効) 
    >>189-190 
   CM_BBSPINK, LOGLOGOUT x, TYPE_TERI, Katjusha_Beta_kisei 
   RAWOUT 
    rawmode時に圧縮対応していないと弾かれる 
  
 mmap時にlockすべきか 
  http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=139&to=139&nofirst=true 
  http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=425&to=425&nofirst=true 
  
 FORCE_304_TIME を鯖負荷に応じて動的に変更する 
  
 deflate 
  そのうち対応  
 
- 379 :デフォルトの名無しさん :01/09/17 01:00
 -  すみません 
 >342=>345 は検討さえしていただけないのでしょうか… 
 
- 380 :名無し娘。 ◆vP.bOZFQ  :01/09/17 01:07
 -  >>379 
 失礼しました。見落としです。ぺこぺこ。 
 CSSによる軽量化ですね。 
 HTML文法にあるCSS宣言ならいいと思います。 
 # 意味不明かな...HTMLには無くてCSSにだけある定義使うとブラウザがまだ 
 # 対応し切れていないような気がしたので...ということ。 
 
- 381 :379 :01/09/17 01:33
 -  >380 
 ありがとうございます.WEB 制作板の方の話はすっかり止まってしまっているので 
 こちらに直接書き込ませていただきました. 
  
 追加されるのは以下の文字列: 
 </title> の直前に 
 <meta http-equiv=Content-Style-Type content="text/css"> 
 </script> の直後に 
 </script><style type="text/css"><!--b{color:green}a b{color:blue}--></style> 
  
 削除するのは <font color=green> と,対の </font> です. 
  
 >345 にも書きましたが +122-(25*age 発言) バイト減ります. 
 表示は NN4.78(Win) でも大丈夫なので,ほとんどのブラウザで大丈夫だと思います. 
 
- 382 :|  - -) :01/09/17 01:41
 -  >>378 
 #define Katjusha_Beta_kisei と config.txt の書き換えはやりました。 
 
- 383 :デフォルトの名無しさん :01/09/17 01:57
 -  >>378 
  
 ></dl>するタイミング 
 > >>126 
 出力サイズの小さい、後半であてました 
 
- 384 :デフォルトの名無しさん :01/09/17 02:00
 -  >>378 
 >>189-190はconfig.txt見るとすでに反映されてますね。 
 
- 385 :デフォルトの名無しさん :01/09/17 02:44
 -  >>378 
 >「名前:」も「:」だけにする 
 CUT_NAME_STRINGとして追加しときました。 
 
- 386 :デフォルトの名無しさん :01/09/17 02:56
 -  >>378 
 >  * [+OK zzz] の場合は差分のみを送信する。zzzは差分サイズ。 
 >  * [-INCR] (Incorrect)の場合はすべてのデータを送信する。 
 INCRのときも、[-INCR zzz]という形になってるよ。サイズがついてる。 
 
- 387 :デフォルトの名無しさん :01/09/17 03:46
 -  >>378 
 >HEADリクエストに対しては Last-Modified と Content-Length を吐くだけにする 
 > >>219 >>226 
 これやってみた。 
  
 ZLIB時: 
  HEADに対してはヘッダのみ出力する。内部的には全部圧縮して、結果の 
 Content-Lengthも出力。 
  
 GZIP時: 
  本文も出力しているまま。 
  
 無圧縮時: 
  通常のヘッダ出力後即終了。Content-Lengthは従来同様出力していない。 
 
- 388 :125 :01/09/17 04:05
 -  PREV_NEXT_ANCHORと同時にCHUNK_ANCHOR/RELOADLINKを指定した時、 
  
 上:■掲示板に戻る■ 全部 CHUNK_ANCHOR 最新50 
 下:[続きを読む/新着レス]///掲示板に戻る 全部 前100 次100 最新50 
 混雑時 
 上:■掲示板に戻る■ CHUNK_ANCHOR 最新50 
 下:[次100 最新50/新着レス] 
  
 の形にした。 
 config.txtの内容をチェックして、ダブりと現状に合っていないものを修正。 
 PREV_NEXT_ANCHORで使用している文字列をr2chhtml.hに追い出した。 
 >>のリンクがno_first=trueになっていなかった。 
 
- 389 :125 :01/09/17 04:32
 -  >>381 
 USE_CSSとして付けた。 
 一応ONにしておいた。 
 が、私は普段CSSはoffしてるので、ちょっとだけ悲しい。 
  
 #まずい、寝なきゃ。 
 
- 390 :デフォルトの名無しさん :01/09/17 05:07
 -  >>356 
 これ適用してみた。 
 
- 391 :デフォルトの名無しさん :01/09/17 06:23
 -  >>387 
 内部的に圧縮を行ったりgzipを呼んだりしてしまうと負荷が 
 ほとんど下がらないのでContent-Lengthは出力しなくて 
 いいと思います。 
 
- 392 :デフォルトの名無しさん :01/09/17 07:26
 -  >>391 
 sousitemita. 
 
- 393 :デフォルトの名無しさん :01/09/17 15:58
 -  >IEはヘッダにはAccept-Encoding: gzip, deflateと含めているにも 
 >関わらず、実際にdeflateでエンコードしたデータを喰わせても 
 >解釈できないです。 
  
 根拠はここ。 
 http://cvs.m17n.org/~akr/diary/d2001_01.html 
 ちなみにこの日記自体がContent-Encoding: deflate 
 で圧縮されているので尋常な手段では読めません。 
  
 一言でまとめると、HTTP仕様はzlibフォーマットのdeflateを 
 要求しているにもかかわらず、IEやNetscape6はzlibヘッダ 
 の付いていない生のdeflateストリームでないとデコード 
 できません。 
 というわけで事実上Content-Encoding: deflateは使えないです。 
 
- 394 :デフォルトの名無しさん :01/09/17 22:44
 -  cvsにChangeLogファイル作ってみたよ。 
 今までの変更のサマリーとtagごとの採用状況をざっと書いてみました。 
 
- 395 :369 ◆3XTuRnAc  :01/09/17 23:30
 -  新しいアドレスは、 
  
 ftp://10.170.136.232/incoming/ 
  
 です。IP変わったのは15日の23時ちょっと前の模様。 
 
- 396 :369 ◆3XTuRnAc  :01/09/17 23:44
 -  あ、ちょうどいい機会なんで、dyndns取りました。 
  
 ftp://readcgi.dyndns.org/ 
  
 ってことで。 
  
 あとはこれを自動更新(せめて一時間に一度程度の自動更新) 
 ができると良いんですが・・・。 
  
 なんとか、一日に一度はチェックするようにしたいと思います。 
 
- 397 :名無し娘。 ◆vP.bOZFQ  :01/09/17 23:55
 -  みなさまお疲れさまです。 
  
 ★CVS使わない人は ftp://readcgi.dyndns.org/incoming/ をご利用下さい 
  
 ★condition一覧/SETTING_R.TXT記述一覧 変更したら随時更新してね♪ 
  http://www.gedoh.org/aki/2ch/current/bbs/config.txt 
  
  
 実装・検討待ちの案一覧 @396 
  
 ETag 
  >>137 >>143 >>167-169 >>173 >>229-232 
  
 URL記述に対するリンク設定も時間帯によらせる 
  http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=817&to=817&nofirst=true 
  
 dat,temp,kako 
  dat,temp,kako を read.cgi で読む 
   >>203-206 >>208 
  datの一部についてのLastModを求める 
  ツール作者さんに対応お願い 
   * raw=xxx.yyy の形式でリクエスト。 xxx=最終レス番号, yyy=そのときのサイズ。 
   * 一行目はステータス: 
   * [+OK zzz] の場合は差分のみを送信する。zzzは差分サイズ。 
   * [-INCR zzz] (Incorrect)の場合はすべてのデータを送信する。zzzは送信サイズ。 
   * [-ERR (テキスト)]の場合はなんかエラーが起きた。 
  
 mmap時にlockすべきか 
  http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=139&to=139&nofirst=true 
  http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&st=425&to=425&nofirst=true 
  
 FORCE_304_TIME を鯖負荷に応じて動的に変更する 
  
 deflate 
  そのうち対応(実用困難らしい >>393) 
 
- 398 :369 ◆3XTuRnAc  :01/09/17 23:58
 -  たびたびすみません(^^;;。 
 369ってのは、ここのスレッドの番号じゃなくて、以前の騒動の時の 
 コテハンでして・・・。 
 
- 399 :デフォルトの名無しさん :01/09/18 00:09
 -  >>397 
 実は>>378もそうなんだけど、リンクされているスレが3つとも、 
 前スレじゃなくて、このスレだったりして。 
 
- 400 :名無し娘。 ◆vP.bOZFQ  :01/09/18 00:12
 -  >>398 
 おひさしぶりです。 
 >>399 
 .....鬱氏(^^; 
 1000035521 -> 998997848 
 
- 401 :デフォルトの名無しさん :01/09/18 00:15
 -  >>397 
 >★CVS使わない人は ftp://readcgi.dyndns.org/incoming/ をご利用下さい 
 どちらかというと新たにcvsを使いたい人は、ですね(笑) 
 
- 402 :デフォルトの名無しさん :01/09/18 01:31
 -  >>397 
  
 >/tech/998997848/817 
 >・URL記述に対するリンク設定も時間帯によらせる NO_LINK_URL_BUSY 
 やっときました。 
 
- 403 :anony ◆3XTuRnAc  :01/09/18 02:03
 -  ちょっと要望なんですが、 
  
 ■掲示板に戻る■ 1- 51- 101- 151- 201- 251- 301- 351- 401- 最新レス50 
  
 これ、上じゃなくて下においていただけないですかね。 
 特に「1- 51- ・・・」の部分。 
 いったん流し読みして、次を読むためにもう一度一番上までスクロールさせて・・・ 
 ってのはちょっと面倒(^^;;。 
 
- 404 :デフォルトの名無しさん :01/09/18 02:15
 -  >>403 
 下に 前100 次100 と付く予定ですが、それじゃ駄目ですか? 
 
- 405 :anony ◆3XTuRnAc  :01/09/18 02:28
 -  >>404 
 あ、そういう予定があるならそのほうがいいな。 
  
 この5.20の書式で行くのかなーと誤解してしまい。 
 申し訳ない。 
 
- 406 :デフォルトの名無しさん :01/09/18 05:53
 -  mmap時のlockは どちらにしても読み出し側単独では不可能(というかナンセンス)で 
 書き込み側での対応が必要かと 
 
- 407 :デフォルトの名無しさん :01/09/18 07:09
 -  んーっと、とりあえず、ETag実装してみた。 
 知識が足りないので、これでいいのかもよくわからない。 
 足りない点や見落としなど含め、意見求む。 
 大幅に書きなおしてくれる人も歓迎。 
  
 動作は、まず当初の目的を考えたので、 
 to=nnが指定されている時だけETagを出力するようにした。 
 main()の流れは、こんな感じ。 
 ・・LastModifiedチェックの後、atexitを登録してから、 
 #ifdefPUT_ETAG 
  if (need_etag(st, to, ls)) { 
   char etag[60]; 
   dat_read(fname, st, to, ls); 
   create_etag(etag); 
   if (match_etag(etag)) { 
    puts("Status: 304 Not Modified\n"); 
    return 0; 
   } 
   printf("ETag: %s\n", etag); 
  } 
 #endif 
 出力部のチェックサムは、とりあえずcrc32を使い、 
 >>173を参考に、dat_read()の先頭でBigBufferをチェックするようにした。 
 また、影響を少なくするため、NotModifiedを返すのは混雑時のみにした。 
  
 出力情報は、%x形式で、 
 ETag: "crc-全サイズ-全レス数-送信部サイズ-送信部レス数-flag" 
 flagは出力が混雑時のものか、等。 
 かなり冗長で使っていない情報も出力しているが、 
 必要最小限にすべきか? 
 もし、ツール等が使う可能性があるなら、 
 to=nn以外のリクエストにも必要があるかも。 
  
 今のままだと、st=1&to=150とした場合、 
 時間帯が異なると必ず更新扱いされてしまう。 
 リクエストのレス全てから算出した値と 
 実際に出力するレスから算出した値を両方求め、 
 それぞれと比較して一致したら304を返す方が望ましい? 
  
 動作確認は、apacheをいれてないので中途半端にしか出来ていない。 
 ・ETag出力の確認 
 ・match_etagがtrue/falseを返す時の出力をそれぞれ確認 
 ・HTTP_IF_NONE_MATCHをputenvして、datに手動で行を追加して確認 
 等はしたものの、 
 IEのリクエストから動作を確認したわけではないので、 
 ONにする前に(可能な人に)動作確認をお願いしたい。 
 NotModifiedを返す条件も募集中(追加をお願い)。 
 
- 408 :デフォルトの名無しさん :01/09/18 07:09
 -  ところで、昨日いろいろ調べて、ようやくcheckout出来た。 
 (今まで、sshでつまずいていた) 
 WinCVSではなく、コマンドラインから動かしているけど、 
 updateは正常に動いているようなので、 
 commitも動作自体は大丈夫だと思う(これからテスト)。 
  
 よく見たら、改行コードが変換されている。 
 まあ、これはcommitする時に戻されるだろうからいいとして、 
 他に気になるのは漢字コードか。 
 コメントを書くのにEUCで保存できないエディタを使ったり、 
 間違えてSJISで保存したりすると、化けるんだろうな。 
  
 ということで、ETagの動作確認の他に、commitの動作確認もお願い。 
 
- 409 :408 :01/09/18 07:50
 -  ちゃんとできたみたい。 
 でも、read.c以外は触りたくないし、 
 細かい修正は今まで通りここに書きこむ方が気楽だ。 
 
- 410 :デフォルトの名無しさん :01/09/18 08:31
 -  >>408 
 困ったことに(笑) 
 read.cとr2chhtml.hはSJISだけどread2ch.hやconfig.txtなどはEUCなんですよね。 
 文字コード自動判別&元の文字コードを維持してくれるエディタを使うようにしないと。 
  
 改行コードについてはWinCVSなんかはテキストとして扱うものは変換してくれますね。 
 バイナリファイルをaddするときはバイナリフラグをつける必要があります。 
 
- 411 :デフォルトの名無しさん :01/09/18 08:43
 -  >>407 
 need_etagを呼ぶタイミングだけど、 
 gzip対応かどうかを判定する前にBaddAccess()を呼ぶのはまずいっす。 
 etag判定時と実処理時で結果が違ってしまう。 
 
- 412 :デフォルトの名無しさん :01/09/18 08:52
 -  >>407 
 >  to=nn以外のリクエストにも必要があるかも。 
 to以外もすべて、ツールに限らず必要だと思う。 
 
- 413 :411 :01/09/18 08:55
 -  >>411 
 タイミング遅らせてみた。 
 
- 414 :デフォルトの名無しさん :01/09/18 12:10
 -  「>」はタグの終了と紛らわしくない限り、「&gt;」と文字参照にする 
 必要はないことになっています。実際、IEやNetscapeでは 
 問題ありません。 
 文中の「&gt;」を「>」に置換すれば1つにつき3バイト節約できます。 
 
- 415 :デフォルトの名無しさん :01/09/18 13:27
 -  >>414 
 「>」を>や「<」を<に変換するのは、本文中にタグを埋め込まれるのを 
 避ける意味もあるから、まずいことになりゃしないか? 
 
- 416 :デフォルトの名無しさん :01/09/18 13:29
 -  あれ? 
 &amp;gt; って書いたのに、「>」になっちゃった。 
 何で?前はこれで書けてたのに。 
  
 ってことで修正 
 >「>」を&gt;や「<」を&lt;に変換するのは、本文中にタグを埋め込まれるのを  
 
- 417 :415=416 :01/09/18 13:31
 -  さらに自己レス。かちゅ〜しゃの仕様ですね。 
 失礼しました。 
 
- 418 :デフォルトの名無しさん :01/09/18 13:51
 -  >>414 
 >>で始まる他レス番号参照のところでのみ対応してみました。 
 あと、PATH_INFO時に他レスへのリンクが常に範囲指定になっていたのも 
 直しました。 
 
- 419 :デフォルトの名無しさん :01/09/18 14:15
 -  2001/09/18 13:09現在の採用状況 
 http://teri.2ch.net/test/read.cgi/accuse/1000730692/8 
 
- 420 :デフォルトの名無しさん :01/09/18 15:49
 -  >>415 
 タグが閉じるのが早くなるだけだから不正にタグを埋め込まれた 
 場合にはむしろ望ましいはずです。 
 &lt;の置き換えだとかなり問題ですが。 
 
- 421 :デフォルトの名無しさん :01/09/18 15:52
 -  >>416 
 かちゅ〜しゃのバグです。せっかく開発してるのだからread.cgiで 
 見てみてください。ちゃんと書けてます。 
 
- 422 :421 :01/09/18 15:54
 -  417で自己レス入ってるのが見えなかった鬱打 
 
- 423 :デフォルトの名無しさん :01/09/18 16:52
 -  #ifdef NN4_LM_WORKAROUND 
 if (!memcmp(zz_http_user_agent, "Mozilla/", 8) 
     && zz_http_user_agent[8] == '4' 
     && zz_http_user_agent[10] >= '5' 
     && !strstr(zz_http_user_agent, "compatible")) 
 putchar('\n'); 
 else 
 #endif 
 この対策が必要なのはNN4.xでも4.5以降だけなので(それ以前 
 はそもそもgzipに対応していない)もっと絞り込めるはず。 
 それともgzip非対応バージョンでもContent-Lengthがあると 
 Last-Modifiedが無効になるのでしょうか。 
 
- 424 :デフォルトの名無しさん :01/09/18 16:54
 -  こうしたほうがいいか。 
 #ifdef NN4_LM_WORKAROUND 
 if (!memcmp(zz_http_user_agent, "Mozilla/4.", 10) 
 && zz_http_user_agent[10] >= '5' 
 && !strstr(zz_http_user_agent, "compatible")) 
 putchar('\n'); 
 else 
 #endif  
 
- 425 :デフォルトの名無しさん :01/09/18 17:26
 -  USE_CSSは 
  
 ・メールリンクなしのfusianasanやトリップに色が付かない 
 ・sageリンクをクリックしていても紫にならない 
 ・名前のリンクを選択中でも赤くならない 
  
 など、かなり見栄えへの副作用が大きいので、 
 とりあえずOFFを希望します。 
 
- 426 :425 :01/09/18 17:33
 -  あと、 
 ・CREATE_NAME_ANCHORが有効だとメールリンクなしの 
  名前まで青くなる 
 というのもありました。 
 
- 427 :デフォルトの名無しさん :01/09/18 17:52
 -  私の計算が間違っていなければ 
 <a href="mailto:sage "></a>も 
 <font color=#0000c0></font>も 
 同じバイト数で、SAGE_IS_PLAINはまったく意味がない 
 ので廃止を提案してみます。 
 
- 428 :デフォルトの名無しさん :01/09/18 18:00
 -  #ifdef ZLIB 
 if ( is_head() || gzip_flag == compress_none ) 
 #endif 
 { 
 /* HEADリクエストならここで終了 */ 
 if ( is_head() ) { 
 return 0; 
 } 
 } 
  
 は不必要に冗長。 
  
 /* HEADリクエストならここで終了 */ 
 if ( is_head() ) { 
 return 0; 
 } 
  
 と論理的に等価。 
 
- 429 :デフォルトの名無しさん :01/09/18 20:19
 -  PATH仕様で「ls=」を意味する文字を、「=」から「l」あたりに 
 変更することを提案します。 
 そうすると「"」を安全に省略できるので、リンク1つにつき 
 さらに2バイトの節約になります。 
 
- 430 :デフォルトの名無しさん :01/09/18 21:16
 -  >>428 
 ああ、それはHEADリクエストでも圧縮処理するように戻すことを考えて 
 残したんです。 
 
- 431 :デフォルトの名無しさん :01/09/18 21:27
 -  >>423 
 誰かNNユーザーの方この検証キボン 
 
- 432 :デフォルトの名無しさん :01/09/18 22:16
 -  >425-426 
  
 CSS の実装を提案した者です.ご意見ありがとうございます. 
  
 >・メールリンクなしのfusianasanやトリップに色が付かない 
 これは…トリップのところまで含めて </b> になってないのはなぜなんでしょう? 
 また,そこが太字であったら(見栄え以外の)不都合はありますか? 
  
 >・sageリンクをクリックしていても紫にならない 
 >・名前のリンクを選択中でも赤くならない 
 今は名前のところが<a><b>...</b></a>になっていますが,これを <b><a>...</a></b> には 
 できませんか?できるなら css 宣言の a b{color:blue} を外すだけで対応できます. 
  
 #ところでこのあたりの色,うちの IE55 NN478 Moz094 だといずれも紫にも赤にもならないのですが? 
  
 >・CREATE_NAME_ANCHORが有効だとメールリンクなしの名前まで青くなる 
 これは<a name></a> を<b></b> の前に置くか,あるいは <b><a>...</a></b> にして css の a b{} を外すか. 
  
 ということで,いずれも<a><b> の順番を変えるとかそういうことで対処できますが, 
 問題はそれをするのにどのくらい手間がかかるかということです. 
 <font color=green> のところは確実に減るのでその減る分に見合うだけの作業になるか 
 どうかですが,これは作業をしてくださる方の判断にお任せします. 
 
- 433 :デフォルトの名無しさん :01/09/18 22:43
 -  >>424,431 
 大丈夫そうに見えるのでcommitした。(memcmpはやめてstrncmpにした) 
 要NN4.0xで検証 
  
 >>429 
 =をlにした。"は、まだ取っていない。 
  
 >>339 
 PATH_INFOで/の数が不正の時にエラーになるようにした。 
  
 USE_CSSはとりあえずOFFにした。 
 
- 434 :デフォルトの名無しさん :01/09/18 22:43
 -  >これは…トリップのところまで含めて </b> になってないのはなぜなんでしょう? 
 名前欄に「</b>◆トリップ<b>」のように入るからです。 
  
 >また,そこが太字であったら(見栄え以外の)不都合はありますか? 
 トリップは◆があるからまだいいのですがfusianasanは騙りと区別が 
 付かないというかなり強力な不都合があります。 
 見栄えも十分問題だと思いますが。 
  
 >今は名前のところが<a><b>...</b></a>になっていますが,これを <b><a>...</a></b> には 
 そうすると今度はfusianasanしたとき<a>と<b>が互い違いに 
 なるのでネスケで細字に見えないという不都合が発生します。 
 というかそれでわざわざ順番を変えてもらったのです。 
  
 >#ところでこのあたりの色,うちの IE55 NN478 Moz094 だといずれも紫にも赤にもならないのですが? 
 うちのIE55では紫にも赤にもなるのですが。 
 NN478でもクリックした瞬間にはちゃんと赤になります。 
  
 >これは<a name></a> を<b></b> の前に置くか, 
 すると今度はメールリンクしなくなります。<a>要素をname用と 
 href用と2つ書いたらサイズが増えて本末転倒になりそうだし。 
  
 >あるいは <b><a>...</a></b> にして css の a b{} を外すか. 
 すでに述べた通り却下です。 
  
 >ということで,いずれも<a><b> の順番を変えるとかそういうことで対処できますが, 
 というわけでそうでもないです。あらためてUSE_CSSは 
 オフにすることきぼん。 
 
- 435 :434 :01/09/18 22:45
 -  って書いてる間にOFFになってましたか。 
 
- 436 :デフォルトの名無しさん :01/09/18 22:54
 -  >>435 
 名前の所を強烈にいじらないと問題ありそうだったからOFFにしました。 
  
 >>433 
 書き忘れ 
 >>427 
 <font color=#0000c0>を<font color=blue>に変えた。 
 これで一応意味はあるのかな。OFFだけど。 
 
- 437 :432 :01/09/18 22:55
 -  >434 
 なるほど.背景をきちんと理解せずに中途半端な提案をしていたようで,申し訳ありません. 
 以上のようなことがあるとすると,CSS を ON にするのは難しそうですね…. 
 やはり,見栄えを変えずに CSS でサイズ削減ってのは(今回の場合には)無理そうですね. 
 
- 438 :デフォルトの名無しさん :01/09/18 23:06
 -  まだちゃんと見てないんだけど、 
 PUT_ETAGがあるとdat_readを複数回呼ぶ場合があるんじゃない? 
  
 サーバーの負荷の問題もあるので、Etag使用は本当に必要な場合のみに 
 抑えたいところ。 
 
- 439 :デフォルトの名無しさん :01/09/18 23:22
 -  CSSの話は最初からボーっと眺めているだけで、 
 「IEとNNは大丈夫」を読んで、時代に逆行するけど 
 「それ以外に問題が発生したら、UserAgentからMozillaが含まる場合」などと、 
 昔よく行われていた(らしい)ことを考えていた。 
  
 もし、CSS使用時の他の問題が解決する目処が立ちそうなら、 
 UserAgentを判別してIEの場合だけCSSを使うとか、 
 NNの場合は<b>や<a>の順番を変える方法もありそうだね。 
 結構変更が大変そうだから、 
 転送量的に必要で、変更する手間があれば、だけど。 
 
- 440 :424 :01/09/19 00:33
 -  すんまへん、大嘘ついてました。NNのgzip対応は4.06からです。 
  
 GET http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&ls=100 HTTP/1.0 
 Proxy-Connection: Keep-Alive 
 User-Agent: Mozilla/4.06 [ja] (WinNT; I) 
 Host: piza2.2ch.net 
 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* 
 Accept-Encoding: gzip 
 Accept-Language: en 
 Accept-Charset: Shift_JIS,*,utf-8 
 
- 441 :デフォルトの名無しさん :01/09/19 00:38
 -  で、NN4.05で試すとAccept-Encodingがないにも関わらず、 
 なぜかgzip圧縮された内容が返ってきて見事に文字化けしたのですが、 
 これってread.cgi 5.20の既知の不具合でしたっけ? 
 もちろんキャッシュは完全にクリアしてから試しています。 
  
 GET http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000035521&ls=100 HTTP/1.0 
 Proxy-Connection: Keep-Alive 
 User-Agent: Mozilla/4.05 [ja] (WinNT; I) 
 Host: piza2.2ch.net 
 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* 
 Accept-Language: en 
 Accept-Charset: Shift_JIS,*,utf-8 
  
 HTTP/1.0 200 OK 
 Proxy-Connection: Keep-Alive 
 Connection: Keep-Alive 
 Date: Tue, 18 Sep 2001 15:18:37 GMT 
 Server: Apache/1.3.6 (Unix) PHP/4.0.3pl1 mod_ssl/2.3.6 OpenSSL/0.9.3a 
 Content-Encoding: gzip 
 Last-Modified: Tue, 18 Sep 2001 14:22:56 GMT 
 Content-Length: 19216 
 Content-Type: text/html 
 
- 442 :441 :01/09/19 00:42
 -  んーNN4.06で見てみたけど今書き込んだ内容が反映されてない… 
 経路上のどこかにキャッシュでもあるんだろうか…。 
 
- 443 :441 :01/09/19 00:47
 -  Shift+リロードしたら圧縮されてない内容がちゃんと 
 返ってきました。やっぱりどこかでキャッシュされてたみたいです。 
 お騒がせしました。 
 
- 444 :デフォルトの名無しさん :01/09/19 00:50
 -  >>441-443 
 Proxy-Connection: Keep-Alive 
  ↑ 
 この辺か? 
 
- 445 :デフォルトの名無しさん :01/09/19 00:53
 -  4.05以前の場合どのみち圧縮された内容は返されない 
 (=Content-Lengthは出力されない)ので、そんなシビアに 
 取らなくてもいいと思われ 
  
 #ifdef NN4_LM_WORKAROUND 
 if (!strncmp(zz_http_user_agent, "Mozilla/4.", 10) 
 && !strstr(zz_http_user_agent, "compatible")) 
 putchar('\n'); 
 else 
 #endif 
 
- 446 :デフォルトの名無しさん :01/09/19 01:03
 -  >>445 
 あてた。 
 
- 447 :デフォルトの名無しさん :01/09/19 01:13
 -  ん? 先祖がえりしてるような…。 
  
 #ifdef NN4_LM_WORKAROUND 
 if (!memcmp(zz_http_user_agent, "Mozilla/", 8) 
     && zz_http_user_agent[8] <= '4' 
     && !strstr(zz_http_user_agent, "MSIE")) 
 putchar('\n'); 
 else 
 #endif 
 
- 448 :デフォルトの名無しさん :01/09/19 01:24
 -  >>447 
 http://www.gedoh.org/aki/2ch/current/bbs/ 
 の更新がとまってるみたい。 
 
- 449 :デフォルトの名無しさん :01/09/19 01:49
 -  現在の最新版を 
 ftp://readcgi.dyndns.org/incoming/read.tgz 
 に置いておきました。 
 
- 450 :夜勤 ★ :01/09/19 03:47
 -  みなさん、いつもありがとうございます。 
  
 新しいの入れようと思うのですが、、、 
 どれ(どこ)なのかな? 
 
- 451 :デフォルトの名無しさん :01/09/19 03:49
 -  >>450 
 >>449が最新です。 
  
 5.21の問題点 
  
 上に前、次があるのは転送量的に問題。 
 NORAML_TAGCUTは、要らなかった。 
 
- 452 :夜勤 ★ :01/09/19 03:53
 -  >>451 
 どーもです。 
 これから、choco に入れてみます。 
 
- 453 :夜勤 ★ :01/09/19 04:07
 -  Makefile:11: *** commands commence before first target.  Stop. 
  
 make ここて、止まっちゃいます。 
 なぜに? 
 
- 454 :デフォルトの名無しさん :01/09/19 04:10
 -  >>453 
 なぜだかわかりませんが、SRCSからの3行を削ってみたらどうでしょう? 
 SRCSはcgiを作るのには関係ありませんから。 
 
- 455 :夜勤 ★ :01/09/19 04:16
 -  うっ 
  
 こんどは、 
 Makefile:71: *** missing separator.  Stop. 
 
- 456 :デフォルトの名無しさん :01/09/19 04:18
 -  ?? 
 なんか、継続行を理解できないmakeな感じですね。 
 gmake 使えませんか? 
 
- 457 :夜勤 ★ :01/09/19 04:20
 -  gmake はいってないです。 
  
 GNU Make version 3.74, by Richard Stallman and Roland McGrath. 
 Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc. 
 This is free software; see the source for copying conditions. 
 There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A 
 PARTICULAR PURPOSE. 
  
 いままでの makefile で ok ですか? 
 5.21のやつ 
 
- 458 :デフォルトの名無しさん :01/09/19 04:22
 -  >>457 
 はい、SRCSに一つ追加しただけですから。 
  
 なんか変ですね。改行コードがおかしいのかしら? 
 
- 459 :夜勤 ★ :01/09/19 04:23
 -  いままでの Makefile で、make しました。 
 choco に 5.22 入りました。 
 
- 460 :夜勤 ★ :01/09/19 04:25
 -  >>458 
 なんか そんな感じです。 
 ちゃんと追っていないので、断定はできませんが、、、 
 何かへんなコードが紛れ込んでいるのかしらん? 
 
- 461 :デフォルトの名無しさん :01/09/19 04:28
 -  >>459 
 ご苦労さまでした。 
  
 しかし、Makefileのどこがまずいんだろう。 
 SRCSの最後にChangeLogを追加しただけなんですが。 
 
- 462 :夜勤 ★ :01/09/19 04:30
 -  #define R2CH_HTML_ERROR_5_TEMP \ 
 "隊長! スレッド <font color=deeppink><b>%s.dat</b></font> は、html化されるのを待っているようです。<br>しばらく待つしかない。\n" 
  
 次期 ver では、にしていただけるとありがたいです。 
 
- 463 :デフォルトの名無しさん :01/09/19 04:33
 -  >>462 
 やっときます。 
 
- 464 :デフォルトの名無しさん :01/09/19 04:57
 -  う、imode時のPATH仕様対応をやってたんだが一足遅かったか。 
 [r2chhtml.h] 
 /* tail: npath=生成するURLその1 nst=次のxxxレス 
  lpath=生成するURLその2 ls=最新レスxxx */ 
 #define R2CH_HTML_T_IMODE_TAIL(npath, nst, lpath, ls) \ 
 " <a href=\"" npath "\">次の" nst "レス</a>" \ 
 " <a href=\"" lpath "\">最新レス" ls "</a><br>\n" 
  
 /* tail: PATHナシ 
         %s=cgi %s=board %s=key %d=開始 %d=終了 %d=レス数 
         %s=cgi %s=board %s=key %d=レス数 %d=レス数 */ 
 #define R2CH_HTML_IMODE_TAIL \ 
         R2CH_HTML_T_IMODE_TAIL("%s?bbs=%s&key=%s&st=%d&to=%d&imode=true", "%d", \ 
                        "%s?bbs=%s&key=%s&ls=%d&imode=true" NO_FIRST, "%d") 
  
 /* tail: PATH仕様 
         %d=開始 %d=終了 %d=レス数 
         %d=レス数 %d=レス数 */ 
 #define R2CH_HTML_PATH_IMODE_TAIL \ 
 R2CH_HTML_T_IMODE_TAIL("%d-%di", "%d", \ 
        "l%di", "%d") 
  
 /* i-Modeで見たとき: PATH仕様 
                      %s=スレ名 %s=板 %d=一度に表示するレス数 
                      %d=一度に表示するレス数 %d=一度に表示するレス数 */ 
 /* </title>の前の空白は削除しないこと */ 
 #define R2CH_HTML_PATH_IMODE_HEADER_1 \ 
 "<html>" \ 
 "<head>" \ 
 "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">" \ 
 "<title>%s </title>" \ 
 "</head>" \ 
 "<body bgcolor=#efefef text=black link=blue alink=red vlink=#660099>" \ 
 "<a href=\"../../../../%s/i/\">■掲示板に戻る■</a>" \ 
 " <a href=\"1-%di\">レスを最初から読む</a>" \ 
 " <a href=\"l%di\">最新レス%d</a>" 
  
 #define R2CH_HTML_PATH_RELOAD_I \ 
 "<center><a href=\"%d-i\">新着レスの表\示</a></center><hr>" 
  
 #define R2CH_HTML_FORM_IMODE(depth) \ 
 "<form method=POST action=\"" depth "bbs.cgi\">\n" \ 
 "<input type=submit value=\"かきこむ\" name=submit> " \ 
 "NAME:<input name=FROM size=20 value=\"\">" \ 
 "MAIL:<input name=mail size=20 value=\"\">" \ 
 "<br>" \ 
 "<input type=hidden name=bbs value=%s>" \ 
 "<input type=hidden name=key value=%s>" \ 
 "<input type=hidden name=time value=%ld>" \ 
 "<textarea rows=5 cols=60 wrap=off name=MESSAGE></textarea>" \ 
 "</form><br>" 
 
- 465 :デフォルトの名無しさん :01/09/19 04:59
 -  机上デバッグしかやってないのでうまく通らないかも。 
 [read.c] 
 out_html()に追加: 
 #ifdef USE_PATH 
 if (path_depth) 
 pPrintf(pStdout, R2CH_HTML_PATH_IMODE_TAIL, 
 lineNo, lineNo + RES_IMODE, RES_IMODE, 
 RES_IMODE, RES_IMODE); 
 else 
 #endif 
  
 html_head()に追加: 
 #ifdef USE_PATH 
 if (path_depth) 
 pPrintf(pStdout, R2CH_HTML_PATH_IMODE_HEADER_1, 
 title, zz_bs, RES_IMODE, 
 RES_IMODE, RES_IMODE); 
 else 
 #endif 
  
 html_reload()に追加: 
 #ifdef USE_PATH 
 if (path_depth) 
 pPrintf(pStdout, R2CH_HTML_PATH_RELOAD_I, startline); 
 else 
 #endif 
  
 html_foot_im()に追加・変更: 
 #ifdef USE_PATH 
 if (path_depth) 
 pPrintf(pStdout, R2CH_HTML_FORM_IMODE("../../../"), zz_bs, zz_ky, currentTime); 
 else 
 #endif 
 pPrintf(pStdout, R2CH_HTML_FORM_IMODE(""), zz_bs, zz_ky, currentTime); 
 
- 466 :デフォルトの名無しさん :01/09/19 05:01
 -  >>462 
 done. 
  
 tag: YAKIN20010919を打った。 
 MakefileのSRCSを分割してみた。これでなんとかならないかな? 
 
- 467 :名無し娘。 ◆vP.bOZFQ  :01/09/19 13:12
 -  みなさんお疲れさまです。 
 5.22のユーザーインタフェース(?)すごく使いやすい。。。とてもお気に入りです。 
 使いやすすぎるのが転送量的に問題とならないことを祈ります。 
 
- 468 :デフォルトの名無しさん :01/09/19 16:04
 -  http://www.gedoh.org/aki/2ch/current/bbs/ 
 ってもう更新されないんですか? 
 
- 469 :デフォルトの名無しさん :01/09/19 17:26
 -  >>464-465 
 やってみた。 
 
- 470 :転載 :01/09/19 20:43
 -  ニュース速報が最新スクリプト5.22になっていた。 
 
325KB
新着レスの表示
スレッドリストへ戻る 全部 前100 次100 最新50
0ch BBS 2004-10-30