X



read.cgi 2006―JavaScriptはCGIの夢を見るか

レス数が1000を超えています。これ以上書き込みはできません。
NGNG
read.cgiをjavascriptで実現させるプロジェクトのスレッドです。

テスト版
http://sunos.saita.ma/read-js/test/read.cgi
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/
2006/07/25(火) 18:25:55ID:eZHXQmmW0
じょじょっびじょばーじょびじゃば作戦始動
3動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/25(火) 18:33:38ID:lpPV/JnB0
後の猪木である
2006/07/25(火) 18:35:05ID:vBJ5wzBt0
すごいNE
NGNG
えらー?
6動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/25(火) 18:41:47ID:6Zw5Wp6cO
セキュリティー上、ファイル書き込み不可な仕様だから無理

phpで殺れ
2006/07/25(火) 18:42:46ID:x6LdgaXe0
ルトガー・ハウアーは出てきませんね、おじゃましましたー
2006/07/25(火) 18:49:16ID:me94jJkD0
>>6
ファイルに何かを書き込む必要、ある?
9stream ◆PNstream2s
垢版 |
2006/07/25(火) 18:53:16ID:KZ+jrYir0
datファイルを取得というと勘違いされがちなんだけど、決してこれは2chブラウザの代替ではない。
read.cgiの代替(改良)である。
NGNG
今までの dat と互換性を残すとすると、デフォルトが
javascript版になった場合、
http://qb5.2ch.net/test/read.cgi/operate/1153819270/
で表示されるのがjavascript版になると。

そして、今使われている read.cgi も残すとすると、それは
別のURLになるのかな。
もし、javascript版を別のURLにして、それをデフォルトにすると
専ブラの仕様変更が必要になる場合があるのかな。
NGNG
夢ってもんはみるもんじゃないぜ
2006/07/25(火) 19:08:55ID:FwtvUCxU0
叶える物さ
2006/07/25(火) 19:09:14ID:5p+KTVNq0
javascript版もdat読み行ってるだけだからなんも問題ないんじゃないの?
2006/07/25(火) 19:10:45ID:xlF0graE0
へーおもすれー
2006/07/25(火) 19:15:01ID:Ntupk+XzP
携帯のフルブラウザとかはどーなる?
2006/07/25(火) 20:03:47ID:uxk+w/hTP
>>15
JavaScriptが使えれば何の問題もない。
・・・DSブラウザからだとちゃんと動くんだろうか?
2006/07/25(火) 20:23:42ID:l4oPOyxJ0
このプロジェクトのきっかけ



http://qb5.2ch.net/test/read.cgi/operate/1153615149/775,827,843

775 名前:ひろゆき@どうやら管理人 ★[] 投稿日:2006/07/25(火) 04:34:06 ID:???0 ?BRZ
おいらはブラウザ派なのですな。

javascriptだけで、read.cgiが実現できるんじゃないかと、
前から思ってるんですが、誰か試してみないすかね。


827 名前: ◆MUMUMUhnYI [sage] 投稿日:2006/07/25(火) 13:42:07 ID:q+wYsp2i0 ?BRZ
(略)

>>775
まったく同じことを考えているです。
2ちゃんねるからは、dat と subject.txt を転送するだけにしたいと。

こう言っておくと、あの某 saita.ma 方面の超人的な人が、
何か考えてくれるかもしれないかもしれないなぁ、とか。

というか、>>811 おー。すばらしいです。
ぜひ、ぜひ。

read.cgi の負荷がきれいさっぱりなくなるかもしれないって考えただけで、
胸のときめきを感じます。


843 名前: 株価【950】 ▲ ◆cZfSunOs.U [sage] 投稿日:2006/07/25(火) 15:16:52 ID:MjMtyIbZ0
まぁ http://sunos.saita.ma/leaflet.html なんかは,>>775 みたいなことを考えてた時に作ったわけですがw

んで,http://sunos.saita.ma/read-js/test/read.html ってのをこしらえてみますた.
http://sunos.saita.ma/read-js/operate/dat/ のように dat がある時,例えば
http://sunos.saita.ma/read-js/test/read.html/operate/1153615149/ のように使う,と......
2006/07/25(火) 21:27:18ID:k+yro5GaO
へー
すごいな
2006/07/25(火) 21:42:50ID:5sn8wzG90
今のところの問題点

・文字化けや表示できないブラウザ等がある
 表示できないブラウザは従来方式に切り替えれば対応可能

・表示速度がマシンによって遅くなる
 重い部分をクライアントではなく鯖側に持って行けば解決可能?


こんなところかな?
2006/07/25(火) 21:46:49ID:LmtJUG9o0
>>19
「重い部分」というのは主に整形処理であって、それはread.cgiが行う処理の
大半でもあるという罠
21御法川将貴
垢版 |
2006/07/25(火) 23:17:23ID:QXaGIOsz0
斎藤優貴は価値も薄れた人間だな
2006/07/25(火) 23:18:54ID:PA4hc9Xd0
>>19
究極的にはAASみたいに画像表示にすればフォントの問題も解決しそうだけど
無理か
NGNG
AASって素人目には負荷すごそうなんだけど
どうにかならんのか?
NGNG
さて、.htaccess 的にはどうすればいいのかしら。 < dso に入れる場合
2006/07/26(水) 00:27:30ID:2SYEq+Uy0
<Files read.cgi>
AcceptPathInfo On
ForceType text/html
SetHandler default-handler
</Files>
<Files *.dat>
Header append Cache-Control max-age=5
AddDefaultCharset Shift_JIS
ForceType text/plain ←2chの今の設定によっては不要
</Files>


どうあがいてもIE6だと文字化けする、が俺の見解。
2006/07/26(水) 00:29:37ID:2SYEq+Uy0
今の状態でdatファイルは text/plain になってるから
ForceType text/plain
は要らないですかね

text/○○ じゃないと AddDefaultCharset Shift_JIS が反映されないんで
NGNG
>>25
> どうあがいてもIE6だと文字化けする、が俺の見解。

質問・雑談スレ231@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1153615149/966

これでも?
2006/07/26(水) 00:34:58ID:oRQikQhd0
まぁ,JavaScript の文字列処理は Unicode 前提ってことなんでしょうねぇ......
2006/07/26(水) 00:35:15ID:2SYEq+Uy0
>>27
こんなのも試してみたんですが
http://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html

どうしても、Shift_JISのdatファイルを無理やりまずUTF-8として読み込まなきゃいけないんですが
そのときにUFT-8的におかしなデータを?に変換してしまうみたいで。
NGNG
>>28
ですね。

なので、>>27 しかないのかなと。
2006/07/26(水) 00:36:49ID:2SYEq+Uy0
304 Not Modified が返ってきた時点で文字化けするんで、
これをやれば文字化けしないんでしょうけど(試してません)。


http://qb5.2ch.net/test/read.cgi/operate/1153615149/904
904 動け動けウゴウゴ2ちゃんねる [sage] 2006/07/25(火) 17:30:30 ID:5p+KTVNq0
dat適当に取得するスクリプト書いて、IEで軽く試してみた。

xmlhttp.setRequestHeader("If-Modified-Since", "Thu, 01 Jun 1970 00:00:00 GMT")
を、追加したらいつでも最新を読み直すようになったよ。
アレだけどw
NGNG
>>29
うーむ。

センス悪い方法としては mod_filter + mod_proxy あたりを使うんですかね。

/板名/dat/*.dat は生だが、

/板名/dat_uta8/*.dat を読むと、上記を mod_filter が UTF-8 にコンバートしてから、
クライアントに渡すとか。
NGNG
センス悪いというか、そんなに悪くないのかな。

ちょっとコスト上がりますが、少なくとも read.cgi で表示するための
整形処理するよりは、負荷低いはずだし。

で、mod_cache とかが*うまく*動けば、一個コード変換したものは
キャッシュされるようにできるかもしれないし。
NGNG
で、JavaScript 化で得られるメリットを考えたら、
コード変換のコストは、reasonable だと思ですね。

結局、単なる決められた数値演算に過ぎないし。
2006/07/26(水) 00:53:24ID:wOSQuFsG0
>>16
Opera8で動くから、
Opera8ベースを使ってるDSブラウザなら余裕だと思う
NGNG
>>35
再読み込みもOK?エラーでない?
37ひろゆき@どうやら管理人 ★
垢版 |
NGNG
はや!
NGNG
>>37
まだ、スタート地点に立ったばかりです。

ほんとの苦労は、これから、これから。

で、これ、どう思いますか?

【にがうり】 雪だるま作戦のスレを待ち続けるスレ Part17
http://aa5.2ch.net/test/read.cgi/nanmin/1153671484/289-
2006/07/26(水) 02:05:10ID:ax/3R4o80
responseTextじゃなくて、responseBodyなら、
クライアント側で変換できるけど。遅いよ
2006/07/26(水) 02:05:27ID:t4IhxYwc0
実用的ではない
まず重い、ありえない
そもそもJavaなんか切ってる人が大半
───終了───
41ひろゆき@どうやら管理人 ★
垢版 |
NGNG
>>38
1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
何割なんでしょう。
少数の高額利用者の食い合いをしてる業界であればわかるのですが、
無料で利用できる掲示板にそのまま適用できるとは思えなかったりします。
NGNG
>>41
> 1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
> 何割なんでしょう。

AMC (ANAマイレージクラブ)の会員は、およそ1000万人と言われています。
乱暴に言えばまぁ大体、飛行機に乗る日本人の数と、当たらずとも遠からずかと。

で、PLT 以上なのは、つまりマイレージプログラムに執着しているとみなせる人は、
そのうちのおよそ 1% 程度といわれています。

つまり、だいたい私と同じか、あるいはそれ以上のレベルの廃人は、
全国に10万人ぐらいは、いることになるです。

これを多いと考えるか少ないと考えるかで、
このようにエンブレムを載せる意味が、
あるのかないのかにつながっていくんではないかと。

で、私は「これは無料だからこそより適用できるのだ、掲示板には愛が大事なのだ」
と、全く根拠なく思っていたりします。
NGNG
>>42
> つまり、だいたい私と同じか、あるいはそれ以上のレベルの廃人は、
> 全国に10万人ぐらいは、いることになるです。

で、これは自分で飛行機を利用した時の、PLT 以上の数の感覚、
例えばラウンジの込みようとか、ビジネスクラスに乗ったときの配膳メニューに
マルP と書いてあるか(見えないようにしているけどたまに見える)とかとも、
だいたい一致している気がするです。

個人的には「廃人は思ったより多いなぁ」という感覚ですね。
というかマイレージプログラムがあるから、廃人が増えるのかもしれないです。
2006/07/26(水) 02:14:43ID:9rtlkJef0
ひろゆきってどのブラウザ使ってるの?
2006/07/26(水) 02:15:06ID:HbnVPe7vO
それやるならついでにプロフィールの背景色連動させて変えようぜ。紺色にしたい
あとそろそろ ? を消して BRZ とかにリンクはらね。
そろそろスレ違いな雰囲気だが
NGNG
>>45
> あとそろそろ ? を消して BRZ とかにリンクはらね。
> そろそろスレ違いな雰囲気だが

これは、スレ違いじゃないかもですね。

新しい read.cgi では、? をはずしてみるとか。
2006/07/26(水) 02:18:25ID:8Qn/kEiJ0
それはいいが、まずdatの形式を#形式にしてもらえないだろうか。

スレ違い御免。
2006/07/26(水) 02:21:51ID:HbnVPe7vO
あとポイント自分に送れるままにしとくなら
ポイントに必要なch森稼ぐ手段としての証券取引所も活性化が見込める
NGNG
で、明日あたりに質雑を読み返して、
出てきた issue を、こっちにまとめておきますか。

このへんから。
今日(もう昨日だけど)は歴史が動いた日で。

質問・雑談スレ231@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1153615149/775-

すべては、一言の神の啓示から始まったと。
そんなわけで。
2006/07/26(水) 10:57:12ID:YgctB/iu0
AjaxでdatをDLするんでそ?
最新のN件とかはどうするの?毎回DAT丸ごとDL?
2006/07/26(水) 10:58:48ID:uOoJt+H8P
京ぽんOperaの場合、オフラインでなら動くのあるんだけどね〜。
★h" style/2ch DAT ビューア
ttp://www13.plala.or.jp/airh/filearea/tool/2chdat/index.html

京2だと保存したdatの拡張子が.htmになっちゃうんで、PC使って拡張子.datに直さないとダメ。
2006/07/26(水) 11:24:50ID:oRQikQhd0
XMLHttpRequest だといろいろ苦しみそうな気がするので,
方針転換して隠しフレームに読み込む形にしてみますた.
たぶん,これで文字化け問題も解決するかと......

それから,先日作った be.js も取り込んで,dat への記録は従来形式
(# の数でランクを示す)のままでも表示段階でマイレージランクに
変換するようにしますた.頭の ? も消えます(ただ,直接 dat に
マイレージランクを記録してる分には対応してません).
で,be.js は index.js と同様に www2 あたりに置いて頂ければ,と......
NGNG
まだばーじょんは書いて無いね
NGNG
あ、opera8.54でも見られるようになった。
だけど、ここ壊れていますが最後に出るよ。
2006/07/26(水) 13:23:52ID:9rtlkJef0
IEはダイレクトXにfirefoxはextentionからdll呼び出し
とかはダメ?operaは知らないけど・・・
2006/07/26(水) 13:28:36ID:3WFXWq3i0
全てに対応しようとしないで、対応していないブラウザはいままで通りread.cgiに飛ばすってのがいいんじゃいかと。
半分のアクセスをこれで対応するだけで、負荷的にはかなり下がるんだし。
NGNG
Windows 2000 Service Pack 4
IE Version: 6.0.2800.1106
IEからみたら読み込み中のまま。フリーズはしなかった。
セキュリティ設定は中。キャッシュを消して見たけどだめ。
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/
2006/07/26(水) 14:40:09ID:rpYommal0
IE以外のブラウザは無視して可ではないのですか。
どういうユーザ層がどのブラウザを使ってるか考えれば。
2006/07/26(水) 14:45:25ID:HbnVPe7vO
そうだね、プロテインだね
2006/07/26(水) 15:11:36ID:dOdHM1Xl0
read.cgi動かすのとiconvとかnkfとかを動かすコストってどのくらい違うのかな。
ほら、XMLHttpRequestってリクエストヘッダも自由自在に送れたりするじゃん?
2006/07/26(水) 15:47:14ID:oRQikQhd0
隠しフレーム方式の場合,今度は文字コードではなく MIME type がバタつくようで...<IE
text/plain として扱ってくれるといいんですが,text/html と勝手に解釈してくれると
dat 中に含まれるタグのところでテキストがバラされたり \n もすっ飛んだり,
ってのが >>57 のようで......あちら立てればこちら立たず......
2006/07/26(水) 15:48:07ID:aUhdqtnc0
というか、Ajax使うならまず最初にブラウザ判定をきちんとやって、
非対応ブラウザなら別の処理に回すってのが常道かと思うが
2006/07/26(水) 16:34:39ID:oRQikQhd0
>>62 まぁ現状では,JavaScript 版と CGI 版をそれぞれどんな URL で提供するかとか
そのあたりも決まってないし,そもそも IE での奇妙な挙動の問題を解決しないことには
実際に日の目を見ることもないでしょうから,その解決がまず先決でしょうし......


で,文字コード変換フィルタモジュールってことではこんなのがあったりします......
http://httpd.apache.org/docs/2.2/mod/mod_charset_lite.html
2006/07/26(水) 16:38:19ID:XjCWLJKJ0
IEだと「別の処理」すらできないのにブラウザ判定も何もないよ
2006/07/26(水) 17:00:48ID:dOdHM1Xl0
Javascript用のdatディレクトリを用意してmod_charset_liteの設定をする.htaccessを用意して
datは専用ブラウザ用の方へのsymlinkにすると?
2006/07/26(水) 18:13:56ID:???0
やりたいことと、とりうる手段の整理からしようかと。
2006/07/26(水) 18:19:16ID:Ii4jXMtq0
とりあえず、最優先の問題点は現方式だとIEでは表示できない事ですか
(炎狐では問題なし)
NGNG
よく見てないので何ですが

datをtext/plainで表示するように.htaccessで設定したものを
アップした後

スクリプト内で
datファイルを読み込んだ直後(70行目あたり?)に
下記のようなタグ書き換えを行う正規表現を置いてみてはどうでしょうか。

var loadDat = loadDat.replace(/</g,"<");
var loadDat = loadDat.replace(/>/g,">");
var loadDat = loadDat.replace(/<pre>/gi,"");
var loadDat = loadDat.replace(/<\/pre>/gi,"");
var loadDat = loadDat.replace(/&/gi,"&");
var loadDat = loadDat.replace(/<xml>/gi,"");
var loadDat = loadDat.replace(/<\/xml>/gi,"");

変化が無ければごめんなさいという事で。
失礼しました
NGNG
タグが書き換えられている・・
こちらです↓

var loadDat = loadDat.replace(/&lt;/g,"<");
var loadDat = loadDat.replace(/&gt;/g,">");
var loadDat = loadDat.replace(/<pre>/gi,"");
var loadDat = loadDat.replace(/<\/pre>/gi,"");
var loadDat = loadDat.replace(/&amp;/gi,"&");
var loadDat = loadDat.replace(/<xml>/gi,"");
var loadDat = loadDat.replace(/<\/xml>/gi,"");

「&」を半角にして頂ければ。
2006/07/26(水) 18:53:00ID:???0
>>67
まだ、個別の項目にいく時期ではないと思うです。
JavaScript でやるのかどうかも、まだ決まっていないと思っています。

というわけで、整理を。

○今回やりたいこと

2ちゃんねるのサーバの負荷を軽くしたい。

○今回の目標

今回は具体的な事項として、

・掲示板サーバで read.cgi を動かすのをできるだけ少なくする

ことを目標にする。

最終的には全廃をめざすが、read.cgi の起動数を少なくできるなら、それでもよい。
2006/07/26(水) 19:04:57ID:6gP6+0Mt0
>>70
やりたいこと&目標は

http://qb5.2ch.net/test/read.cgi/operate/1153615149/775
>おいらはブラウザ派なのですな。

>javascriptだけで、read.cgiが実現できるんじゃないかと、
>前から思ってるんですが、誰か試してみないすかね。

じゃなかったっけ?
2006/07/26(水) 19:07:02ID:zo6Ee0v80
>>71
それ、>>70と矛盾してる?
2006/07/26(水) 19:08:22ID:hZZWHB7M0
つまりread.cgiの負担を減らす事かと
2006/07/26(水) 19:09:03ID:+1rXbJLeP
目標は>>70、やりたいことは>>71で。
2006/07/26(水) 19:16:29ID:WJtZ0RWx0
>>70がrootくんが独自に掲げたお題だっていうなら納得
>>70がひろゆきくんからの指令だって言うなら否定
NGNG
>>70 は、私の位置づけです。

で、それがたまたま、管理人の興味と一致したので、
私もやる気になった。

ということだと思います。
NGNG
なので、私は >>70 の目的が実現できるのであれば、
別にその手段が JavaScript である必要はかならずしもなくて、
別のものでもいいと思っているです。

JavaScript 以外の候補としては、

・flash
・Java

なども、あると思っています。

で、私としては管理人が「JavaScript 以外のものは使うな。これは私の命令です」
と言わない限り、可能性はより多いほうがいいなと考えています。

つまり、上記に JavaScript も含めたそれぞれの

・メリット
・デメリット
・実現可能性

などなどの要素を総合的に評価したうえで、
目標実現のためにどんな道具を使うのがいいか、決めたいかなと。
2006/07/26(水) 19:34:30ID:ax/3R4o80
だったらActiveXでWebブラウザ上に2chブラウザ再現しちゃえば良いじゃん。IE限定だけど
NGNG
>>78
それも、手段としてはありえますね。

>>78 さんは「IE限定」と書かれていたわけですが、
目的の実装に使う手段を選ぶときには、そういったファクター(汎用性とか)も、
当然考慮するべきものの一つなのかなと。
2006/07/26(水) 19:44:51ID:9rtlkJef0
IETabみたいに、レンダリングエンジンをうまく
ごにょごにょすればfirebirdでも大丈夫だぜ
2006/07/26(水) 19:57:39ID:kXk1e64C0
>>78>>80
うーん、read.cgiの代わりだからなあ。2ch独自のものを導入させるってのは違うと思う。
JavaScriptにしてもFlashにしてもJavaアプレットにしても、2ch独自じゃないし。
2006/07/26(水) 20:10:42ID:kV/VHu8d0
2001年の閉鎖危機の時にもread.cgiをjavascriptで代用するという案があったけど、
当時は互換性うんたらかんたらで却下されました。
2006/07/26(水) 20:24:33ID:kXk1e64C0
んで、mod_charset_lightでUTF-8に変換してみたけど、うまくいきますね。
ただ、Shift_JIS的におかしなデータがdatファイルに存在すると500 Internalサーバーエラーになるっぽいですね。
NGNG
>>83
なるほど。

ただこの場合、コード変換の分だけ、サーバは仕事をすることになりますね。
read.cgi 動かすのとどっちが負荷がトータルで低くなるか、が、
重要なポイントの一つなのかな。

あとは、ユーザに影響が出ないように実装できるのか、とか。

いずれにせよ、
> ただ、Shift_JIS的におかしなデータがdatファイルに存在すると
> 500 Internalサーバーエラーになるっぽいですね。

は、ちょっといまいちなのかなと。
2006/07/26(水) 20:34:48ID:kXk1e64C0
>>84
それは詳しい人のフォロー待ちです
マニュアルちょっと読んで試しただけなんで
2006/07/26(水) 21:08:04ID:kV/VHu8d0
IEのデータバインディングを使って、datをcsvとして読み込むという方法もあるのかな。
http://www.microsoft.com/japan/msdn/columns/dude/dude1103.aspx

ここのサンプルなんかはSJISのデータファイルを読み込んでる。
http://himuka.miyazaki-c.ed.jp/db/kyouzai/manual/orienteering2/ogura/sample.htm
2006/07/26(水) 21:20:34ID:oRQikQhd0
Java アプレットは重い(特に VM 起動時)ですからね......
Flash は Java よりは軽いでしょうけど,(文字列の扱いにもよるのかも
知れませんが)文字化けすることもあって......まぁこちらの環境は少数派でしょうけど.
http://sunos.saita.ma/read-js/test/flash.png
JavaScript はブラウザによって挙動不審になったりとかする部分もあったりするのが
苦労するところですが,それを乗り越えれば一番お手軽ではあるんですよね.

あと,フィルタモジュールの負荷ってことなら,文字コード変換より圧縮,
つまり mod_deflate の方がよほど重いかと.
2006/07/26(水) 21:22:52ID:+1rXbJLeP
ここで空気を読まずにJSP
2006/07/26(水) 21:29:57ID:gpcl/1Jf0
JSPって↓のようなやつだっけ?
<%
 for(int i = 0; i < bbs.getLastNum(); i++){
%>
メッセージ:<%= bbs.getMessage() %><br>
<%
 }
%>
2006/07/26(水) 21:30:19ID:wK/+H917P
Web製作板でJavaScript版
プログラム板でJava Applet版
Flash板でFlash版
を作ればいいんでね?盛り上がりそうw
2006/07/26(水) 21:36:49ID:8Qn/kEiJ0
SunがMicrosoftのVM潰さなければねぇ。
独自拡張もあったにしろMicrosoftの方が早かったのに。
NGNG
JSPはサーバサイドだからあんま意味なくね?
それとも実はものごっつ軽いとか?
2006/07/26(水) 23:03:24ID:RjRvuw4Y0
いや、別にJSPがものごっつ軽いとかは無い。
普通にサーバサイドだし。
2006/07/26(水) 23:10:45ID:oRQikQhd0
不正なバイトシーケンスを無視して 500 エラーにしないようにするパッチ.

--- httpd-2.2.2/modules/filters/mod_charset_lite.c      Sat Apr 22 10:53:06 2006
+++ httpd-2.2.2/modules/filters/mod_charset_lite.c      Sat Apr 22 10:53:06 2006
@@ -188,6 +188,31 @@
     return NULL;
 }
 
+static apr_status_t _xlate_conv_buffer_no_eilseq(apr_xlate_t *convset,
+                                                 const char *inbuf,
+                                                 apr_size_t *inbytes_left,
+                                                 char *outbuf,
+                                                 apr_size_t *outbytes_left)
+{
+    apr_status_t rv;
+
+    while (inbytes_left && outbytes_left) {
+        apr_size_t inbytes = *inbytes_left, outbytes = *outbytes_left;
+
+        if ((rv = apr_xlate_conv_buffer(convset, inbuf, inbytes_left,
+                                        outbuf, outbytes_left)) != APR_EINVAL) /* EILSEQ */
+            break;
+        if (*inbytes_left)
+            inbuf += inbytes - --(*inbytes_left);
+        if (*outbytes_left)
+            (outbuf += outbytes - --(*outbytes_left))[-1] = '?';
+    }
+
+    return rv != APR_EINVAL ? rv : APR_SUCCESS;
+}
+
+#define apr_xlate_conv_buffer _xlate_conv_buffer_no_eilseq
+
 /* find_code_page() is a fixup hook that decides if translation should be
  * enabled; if so, it sets up request data for use by the filter registration
  * hook so that it knows what to do
NGNG
文字コード変換でサーバーにかかる負担はどれくらいなんだ?
2006/07/26(水) 23:33:57ID:9rtlkJef0
文字コード変換もjava scriptで。
NGNG
>>90
それぞれの住民が、競い合って作るというのはどうか。

>>94
おぉ。

これでいけるなら、文字コード変換のコストは
それほどでもないと。

あとは、/板名/dat だと今までの dat を生読みして、
/板名/datutf8 だと mod_filter かました結果で出る、
というふうにできると、いいのかな。

mod_proxy 使えばできそうな気がするんですが、どうやるのがいいんだろうか。
2006/07/27(木) 00:17:17ID:tvu0ZHE80
jspは意味無いでしょ・・・
折角、サーバ側で読み出しの負荷を下げようというのに・・・
2006/07/27(木) 00:21:06ID:5ofr++i80
>>97
板のディレクトリのところに dat-utf8 とかでdatディレクトリに対しシンボリックリンク作って
そこへのアクセスはmod_charset_liteを使うようにするとか

これだと各サーバーの各板でシンボリックリンクを張る作業しなきゃいけないから大変?
100root▲ ★
垢版 |
NGNG
>>99
めんどそうだなぁ。
2006/07/27(木) 00:35:54ID:YpMYl/gy0
<ぼそ>スイスアーミーナイフ</ぼそ>
2006/07/27(木) 00:44:39ID:86/KPhLr0
rangeで**バイト以降のデータをリクエストしたら、変換後のバイト数で来るんだよね。
2006/07/27(木) 18:42:21ID:viWF9XEA0
ブラウザによって違う動作といえば、Gecko系のXMLHttpRequestは
同一ホストか同一ドメインに限られていたような。
これは各サーバに入れておけば済む問題だが。
104root▲ ★
垢版 |
2006/07/27(木) 20:07:57ID:???0?PLT(10000)
JavaScript は、結構方言が多いんですかね。

大きく分けると、

・IE 系
・Gecko 系
・Opera 系
・Safari 系

ぐらい?
2006/07/27(木) 20:26:48ID:mkOYbx750
そこにバージョンの差とかいろいろ
2006/07/27(木) 20:32:55ID:6s+Ev8y+0
>104
分類すると

・IE−Sun系 MS系
・Gecko−1.5系 2.0系 3.0系

OperaとSufariは使ったことがないので補足ヨロ
2006/07/27(木) 20:34:59ID:???0
>106
Gecko間違えて炎狐でやっちゃった

・Gecko−1.8.0系(炎狐1.0.x) 1.8.1系(炎狐2.0) 1.9系(炎狐3.0)
2006/07/27(木) 20:37:27ID:E06nA/kZ0
Safariは1.X系と2.X系…か?
2006/07/27(木) 20:45:01ID:/QbR/fVa0
SafariはKHTML系の一部だろ。
他にKonquerorとかある。
2006/07/27(木) 20:58:53ID:F/NtCPlN0?2BP(33)
Operaって
ttp://www.opera.com/docs/specs/js/
こんなでいいの?
2006/07/27(木) 21:19:09ID:fWmc8hHl0
>>102 そうなります......と言いたいところですが,基本的に chunked 転送となって
Range は効かないかと.もっとも,Range を効かせた場合は mod_deflate で
圧縮するわけにはいかない(Range 指定しても圧縮後の内容に対して
Range が効いてしまうため)とか,キャッシュと Range の相性もよろしくない
ってことで,果たしていいのか悪いのか......

なお,前のパッチ以外にも修正した方がいい点があったので,パッチ更新版を.
http://sunos.saita.ma/read-js/test/mod_charset_lite.patch

ちなみに,httpd.conf の設定はこんな感じかな.

AliasMatch ^/(\w+)/dat-utf8/(\d+\.dat)$ /home/ch2xxx/public_html/$1/dat/$2
<Location /*/dat-utf8/*.dat>
    SetOutputFilter XLATEOUT
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
</Location>

Alias /test/bbs-utf8.cgi /home/ch2xxx/public_html/test/bbs.cgi
<Location /test/bbs-utf8.cgi>
    SetInputFilter XLATEIN
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
</Location>
112root▲ ★
垢版 |
2006/07/27(木) 21:28:07ID:???0?PLT(10000)
>>111
おぉ、、、。

これは、dso.2ch.net に入れると、
テストが可能になると言っていますか?
2006/07/27(木) 21:33:51ID:fWmc8hHl0
>>111 かもですね.ただ...... sunos.saita.ma で見ている限りでは,
mod_charset_lite で必要な APR-Util 中の apr_xlate_*() の関数群が
FreeBSD だと普通にビルドすると APR_NOTIMPL になっちゃうかも知れない
っぽいんで,ビルド時に細工してやらないとならないのかも......?
2006/07/27(木) 21:39:59ID:fWmc8hHl0
>>113 s/>>111/>>112/

....../include/apu.h 中の

#define APU_HAVE_APR_ICONV 0
#define APU_HAVE_ICONV 1
#define APR_HAS_XLATE (APU_HAVE_APR_ICONV || APU_HAVE_ICONV)

のところで APR_HAS_XLATE (== APU_HAVE_APR_ICONV || APU_HAVE_ICONV) が 0 に
なってるようだと,そのままでは使えないので細工の上 APR-Util のビルドし直しが必要かと.
2006/07/27(木) 23:06:38ID:qm7/fCsY0
>>107
1.0 1.5 2.0?
116tato
垢版 |
2006/07/28(金) 00:17:25ID:+swShs5T0
この「CGIの夢を見るか 」スレから ここ↓「Ajaxでも語りませんか3」スレへ来られた方が
http://pc8.2ch.net/test/read.cgi/php/1147750917/
こんな質問↓をされているのですが、
http://pc8.2ch.net/test/read.cgi/php/1147750917/334

>IE6だと、最初のリクエストだとOK・・・・・・304 Not Modified が返ってくると・・・・・UTF-8と解釈して文字化け
この現象を確認できるページはどこかにあるでしょうか?

普通に考えると、304で表示されるのはキャッシュのはずですから、それが最初OKだったsjisではなく、UTF-8に解釈されてしまうとしたら、
個々のブラウザのローカルなエンコード設定の問題なような気もするのですが、何はともあれ、その現象がどこでも再現するのかを確かめたいと思いまして、、、。
2006/07/28(金) 00:26:30ID:BnqGP0Q/0?2BP(111)
>>103-107

参考になるのかな?
http://www.mozilla-japan.org/docs/web-developer/sniffer/browser_type_oo.html

#Firefox は使い始めたばかりで、Mozilla(Gekko)、Firefox のバージョンの区別が…
2006/07/28(金) 00:37:36ID:azD6ToFp0
>>116
http://210.235.206.47/read-js/test/read.html/linux/1082969833/
http://210.235.206.47/read-js/test/read.html/linux/1153390747/
こんな感じです
2006/07/28(金) 00:41:08ID:lDXvnfU00
一瞬CPUファンがすごく回転した。コワス・・・
2006/07/28(金) 01:24:01ID:3rgozFxf0
とりあえず,UTF-8 の dat を取得する形で XMLHttpRequest 利用に戻しておいた.
ただ,sunos.saita.ma は共用サーバにつき自分で mod_charset_lite を組み込んだり
できないんで,UTF-8 に変換済みの dat を置いて代用......
http://sunos.saita.ma/read-js/operate/dat-utf8/
2006/07/28(金) 01:48:01ID:r+F+KIBY0
む、500になる。
122tato
垢版 |
2006/07/28(金) 02:00:54ID:+swShs5T0
キャッシュの再読み込み時に文字コード判定をUTF-8にしているようですね。
もし、キャッシュを無視する下記のような方法だとどうなるでしょうか?キャッシュは使えなくなりますが。。。
httpReq.open("GET", urlPrefix + "../" + paths[1] + "/dat/" + paths[2] + ".dat?"+(new Data()).getTime(),false);

#ところで、asyncがfalseのわけは?
2006/07/28(金) 02:02:23ID:3rgozFxf0
あ...... sunos.saita.ma には mod_headers が入ってなかったんだ......
2006/07/28(金) 03:16:41ID:636jpKTQP
JavaScript重すぎ。
2006/07/28(金) 04:32:41ID:kVfCz8VA0?BRZ(3183)
http://pc8.2ch.net/test/read.cgi/php/1147750917/337の案って

<?xml version="1.0" encoding="Shift_JIS"?><response><![CDATA[
動け動けウゴウゴ2ちゃんねる<><>03/08/31 03:53 ID:xo367wqv<> 踏むとスレ立てしたり投稿したりするスクリプトにつて <br> 情報を集めたり対策したりするスレです。 <>■ スレ立て・投稿スクリプト対策
動け動けウゴウゴ2ちゃんねる<>sage<>03/08/31 03:53 ID:Xj/IL/tw<> ( ゚д゚)ポカーン <>
動け動けウゴウゴ2ちゃんねる<>sage<>03/08/31 03:59 ID:xo367wqv<> http://okazu.bbspink.com/test/read.cgi/ascii/1062203672/13- <>
(略)
]]></response>
っていうはったりXMLをサーバーが用意。

※CDATAは、 ]]> だけが使えない。セクションの終りになっちゃうから。

文字コードの変換は行わないで、
><?xml version="1.0" encoding="Shift_JIS"?><response><![CDATA[
と、
>]]></response>
で、はさむだけだから負荷はそんなにない感じ?

JavaScript側は
httpReq.responseText

httpReq.responseXML.documentElement.text

に変更するだけ。

って感じかな。誰かできる人試してくれ。
上手く行ったらBeをふりこんで置くように
2006/07/28(金) 07:18:47ID:E5cyDbY60
今のread.cgiの出力を単純にこうするだけでもけっこう軽くなるでしょうか?

<form name="datForm">
<textarea style="display:none;" name="namaDat">
(ここにdatをそのまま出力)
</textarea>
</form>
<script src="lib.js"></script>
<script>
showThread(document.datForm.namaDat.value,1,1000);
</script>
127tato
垢版 |
2006/07/28(金) 09:46:52ID:chE9END/0
今日、別のマシンのIE6で見たらリロードしても文字化けしていませんでした。もしかしてサーバー側で何か変りましたか?

ところで、

httpReq.open("GET", urlPrefix + "../" + paths[1] + "/dat/" + paths[2] + ".dat", false);
httpReq.send(null);
texts = httpReq.status == 200 ? httpReq.responseText.split("\n") : ["[エラー]<><>[エラー]<>[" + httpReq.statusText + "]<>[エラー]", null];

この部分ですが、このままですと着信待たずにresponseText要求して失敗する可能性が高いので、たとえば、

httpReq.onreadystatechange =function () {
texts = httpReq.status == 200 ? httpReq.responseText.split("\n") : ["[エラー]<><>[エラー]<>[" + httpReq.statusText + "]<>[エラー]", null];
}
httpReq.open("GET", urlPrefix + "../" + paths[1] + "/dat/" + paths[2] + ".dat", false);
httpReq.send(null);

オーソドックスにこんな方が良いのではないかと思います。
128tato
垢版 |
2006/07/28(金) 10:13:47ID:chE9END/0
>>125 は、たぶん良い方法だと思います。が、
httpReq.responseXML.documentElement.text がおそらくOperaやFirefoxで動作しない気もしますので
普通に、

var xmlDoc = oj.responseXML
var nodes = xmlDoc.getElementsByTagName("response")[0].firstChild.nodeValue

などで取り出すのが良いかも。
2006/07/28(金) 10:43:15ID:3rgozFxf0
>>125 それって,SSI 使えば結構簡単にできそう......と思ったけど,
SSI は普通にやると Last-Mod を吐かない,XBitHack 使って吐くようにしても
それはインクルードした dat の mtime ではなく外側の xml の mtime になってしまう,
ってことで,やるとしたら read.cgi のように DSO で dat を取り込んでそんな感じに
出力するってことになるかな.


てか,そもそも負荷軽減が目的でそういうことやるなら,現行の read.cgi にムダがないか
見直すのが先決という気も.read.cgi を介さず dat を直接返せば軽くなると言われてるけど,
mod_deflate 使わずに sendfile() で一気に送出するならともかく,実際は gzip 圧縮かけてますよね.
圧縮処理自体,文字コード変換や HTML 整形処理などと比べても結構重いはずです.
それにもまして read.cgi が重いとすれば,現状の read.cgi にムダがあることの現れではないかと.
現状では Last-Mod 吐いてないからキャッシュが効かないとか,(サブリクエストを使わなければならない
雪だるま鯖では仕方ないとして)mmap() 使わずにバッファに dat を読み込んでるとか,
その他 HTML 整形処理などももっと軽量化する余地がないかとか,そういうあたりのことを......
あと,read.cgi 出力に mod_cache かましたらどうか,ってのもあるか.

そうしたことを考えれば,JavaScript 版を作るのは負荷対策というより
「こういうこともできるのか」という技術的好奇心の側面の方が強いという気がします.
2006/07/28(金) 10:50:47ID:3rgozFxf0
>>127 >>118 のは最初に作った旧版で synchronous にデータを取得するため
onreadystatechange() を使ってませんでしたが,今の
http://sunos.saita.ma/read-js/test/read.html
asynchrous にデータを取得するので使ってます.
2006/07/28(金) 11:08:13ID:F/mZ8+KK0
>>118のページに、「文字化けデモです」と注意書きを入れました。
2006/07/28(金) 11:13:30ID:YlQHVubn0
>>129
> そうしたことを考えれば,JavaScript 版を作るのは負荷対策というより
> 「こういうこともできるのか」という技術的好奇心の側面の方が強いという気がします.

どこまでカリカリにチューニングしたって JavaScript を利用すれば結局
サーバ側の整形処理そのものを省略できるんだから負荷対策にはなるんじゃない。
133tato
垢版 |
2006/07/28(金) 11:24:05ID:chE9END/0
>>130 了解しました。
>>131 ちなみに、今日使っているマシンは(IE6.0.2900.2180.xpsp sp2 gdr.050301-1519)はリロードしても文字化けしていません。キャッシュの設定はいろいろ試しましたが文字化けしません。

http://sunos.saita.ma/read-js/test/read.html
はEUCなんですね。

あと、サーバー自身がtext/plain;charset=xxxを吐き出していないような気がするのですがどうなのでしょう?
2006/07/28(金) 11:41:20ID:3rgozFxf0
>>132 その主張は一面では正しいと思います.ただ,PATH_INFO であれ QUERY_STRING であれ
URL で板・スレを指定する限りにおいてはムダなリクエストが増えるという側面もあります.
ページをロードするたびに read.html と *.dat をそれぞれロードするというのはもちろんですが,
別の板やスレを表示する場合 read.html そのものは変化しないにもかかわらず
ブラウザから見ると別のドキュメントとして新たに取得し直してしまいます.
例えば

/test/read.html/operate/1000000000/ と /test/read.html/operate/1000000001/
/test/read.html?bbs=operate&key=1000000000 と /test/read.html?bbs=operate&key=1000000001

どの場合でも read.html 自体は変化しないのですが,ブラウザから見ると
すべて別個のドキュメントとしてそれぞれに read.html をロードし直してしまうのです.
もちろん,それぞれのページ内でさらに *.dat を取得します.
そうした余分なリクエスト増加も勘案すれば,read.cgi をリファインした場合と比較して
果たしてどうなのか,というのも要考慮かと......


>>133 現状のはとりあえず UTF-8 前提になってるので charset 指定を外してます.
135tato
垢版 |
2006/07/28(金) 11:50:21ID:chE9END/0
今日使っている文字化けしないマシンを調べたら、どこの設定をいじっているのかは不明ですが、キャッシュが残らないようになっています。
つまり、毎回読みにいっているわけですけれど、少なくとも、このShift_JISの文字化けは、
キャッシュさえ読まなければ解決する可能性が高い気がします。
キャッシュのせいで、文字化けしたり、キャッシュが効きすぎて書き換わらないなどのトラブルが起きるよりも、毎回読みに行くとしても
no-cacheなどのほうが良いかも?という意味では、
<meta http-equiv="Expires" content="Sun, 10 Jan 1990 01:01:01 GMT" />
<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="Pragma" content="no-cache" />
を書いたり、url+"?"+(new Date()).getTime()でキャッシュを無視したりする方がよいかもしれません。
2006/07/28(金) 11:52:56ID:YlQHVubn0
>>134
全部同じ HTML でいいんだから1画面フレームで表示、てのもできるけど、そうでなくても
<script type="text/javascript" src="****.js"></script>
と指定すればこのファイルはキャッシュされるよ。

> それぞれのページ内でさらに *.dat を取得します.

これは多分、read.cgi も同じでしょう。
Ajax スレの方に書いたけど、plain.cgi とか使えば最新 50 もできるよね。
2006/07/28(金) 12:06:36ID:3rgozFxf0
>>136 いや,だから JavaScript 部分を分離しようがフレームを使おうが何だろうが,
外側の read.html 自体は板・スレが変われば別ドキュメントとして扱われる,
だからそのたびに新たにロードされる(余計な HTTP リクエストが発生する)
ということを言いたいわけですが......

>> それぞれのページ内でさらに *.dat を取得します.
>これは多分、read.cgi も同じでしょう。

少なくとも,read.cgi 自体が *.dat を HTML 整形する限りに置いては
HTTP リクエスト・レスポンスは1回だけで済むわけですが......
それとも,read.cgi がサーバ内で *.dat を読み込むって意味で言ってますか?
ネットワーク越しに HTTP リクエストを受け付けてクライアントに *.dat の内容を
返すのに比べれば,ローカルファイルを open(), mmap() して読み込むだけの
方が遙かに軽いわけですが......
138136
垢版 |
2006/07/28(金) 12:07:04ID:YlQHVubn0
あーもっと簡単な方法に気づいた。
/test/read.html#/operate/1000000000/
location.hash で指定。ダメかな?
2006/07/28(金) 12:13:11ID:3rgozFxf0
>>138 余計なリクエストを発生させないという点では有効でしょうけど,
その形式が普及するまでの間,既存の板・スレ指定を行った URL が残る限りは
効果を発揮しきれないかと.まぁ過去にも一度 QUERY_STRING から PATH_INFOへの
転換を行ってるので,そうした新形式への変換は必ずしも不可能ではないかも知れませんが......
2006/07/28(金) 12:28:17ID:YlQHVubn0
>>139
> 既存の板・スレ指定を行った URL が残る限りは効果を発揮しきれないかと.
あーそっか。そうだね。

>>137
> ローカルファイルを open(), mmap() して読み込むだけの
> 方が遙かに軽いわけですが......

でも、read.cgi はそれを更に整形してからネットワーク越しに送ってるんだよね?
送られるデータの量よりは、リクエストの数の方が問題なのかな。
2006/07/28(金) 12:34:38ID:o51wigyx0
>>140
read.cgiはさらに負荷もあるですよ
142tato
垢版 |
2006/07/28(金) 12:39:40ID:chE9END/0
考えられるShft_JIS用文字化け対策リストはこんな感じ?
>>111 utf-8専用のディレクトリ/dat-utf8/を作る
>>125 respnseTextではなくrespnseXMLでcharsetを明示処理 -->Safari1.2でも動作可
>>135 キャッシュ無効no-cache -->ユーザーの設定が優先されるので駄目かも&負荷?
>>135 キャッシュ無視url+"?"+(new Date()).getTime() -->read.htmlを何度でも呼ぶ負荷が気になる?

utf-8にしてもresponseTextではBOMを付けるなどの弊害もある細工が必要なので、
私はXMLを使う>>125がお勧めですが、.datの構造を変えるのは手間?
だめなら、キャッシュを無視。
143tato
垢版 |
2006/07/28(金) 12:47:17ID:chE9END/0
静的ファイルへのリクエストと.cgiの負荷を比べると、普通は.cgiの負荷の方が高いと思いますが、
なにしろ、リクエスト数の多い2chなので、その判断は現場の人でないとわからないかも?
2006/07/28(金) 12:52:12ID:3rgozFxf0
>>140-141 read.cgi の処理による負荷があるのはわかります.しかし,
静的コンテンツであっても HTTP リクエストを処理することによる負荷もあります.
HTTP リクエストが増えればそれによる負荷増もあるってことで,
そのあたりを read.cgi をリファインした場合と比較すればどうなのか,と.
2006/07/28(金) 13:02:09ID:zKffljcV0
どんなにリファインしても.cgiの負荷が静的コンテンツの負荷より下がるとは思えないけどなぁ
2006/07/28(金) 13:06:22ID:7fX0/+L20
一応補足しておくと、read.cgiはCGIと表記はなっていますが、実際はApacheモジュールに近いものです。
mod_cgidso http://sunos.saita.ma/mod_cgidso.html

read.htmlはJavaScriptを使う関係で、2chの背景画像みたいに
別サーバーにおくというわけにも行かないですしねえ


read.htmlを使うとして
(1)UTF-8に変換(responseText) >>111
(2)datファイルを単純なXMLに変換(responseXML) >>125
(3)キャッシュ無効は、If-Modified-Since: 昔の時刻 を設定するのが一番どのブラウザでも安全かと
147tato
垢版 |
2006/07/28(金) 13:15:09ID:chE9END/0
ああ、そうだ。
>>136 の方が書いていますが、
たとえば、read.htmlのソースを
<script type="text/javascript" src="read.html.js" charset="xxx"></script>
などにして、全部JavaScriptで出力してしまえば、
read.html.js自体はキャッシュされますから、

/test/read.html/operate/1000000000/ と /test/read.html/operate/1000000001/
/test/read.html?bbs=operate&key=1000000000 と /test/read.html?bbs=operate&key=1000000001

こんなふうに何度呼ばれても、再読込は1行だけかも。
HTTP リクエスト回数そのものの負荷は減らなくてもかなり軽くはなります。

あ、read.cgiから
<script type="text/javascript" src="read.html.js" charset="xxx"></script>
を出力するとリクエスト回数は減って、datのロードをクライアント側のAjaxにも任せられる?ハイブリッドみたいな?
2006/07/28(金) 13:23:21ID:3rgozFxf0
>>145 HTTP リクエスト数がほぼ同一という前提ならそれは当然です.
さすがに,単一のリクエストにおいて動的コンテンツ処理の負荷が
静的コンテンツ処理の負荷より軽いなんてことを言うつもりはないです.

ただ,JavaScript 版(に限らず Java や Flash などでもそうでしょうが)で
ページをロードした場合,外側の html と内側の dat 双方の HTTP リクエストが発生します.
つまり(静的コンテンツではあるものの)HTTP リクエストが増加することは必至です.
しかも,その静的コンテンツも sendfile() で一気に送るのではなく,
gzip 圧縮という結構重い処理を介してます.そうしたことも考慮すれば,
HTTP リクエスト増加による負荷増も無視できない水準になるだろう,
それを read.cgi をリファインした場合と比べればどうなのだろうか,と......


要は,個人的には JavaScript 版 read.cgi を作ること関しては,
負荷対策を第一義的目標として掲げて行うことには懐疑的,
(負荷も考慮しつつも)技術的好奇心を主眼として行うのなら好意的,ってことです.
2006/07/28(金) 13:33:36ID:YlQHVubn0
iframe 使った読み込みした場合のデータのキャッシュって普通のコンテンツと同じかな?
使えるとしたら、Expires で超未来指定することで HTTP リクエストを軽減できるかも。
150tato
垢版 |
2006/07/28(金) 13:52:45ID:chE9END/0
それにしても、metaでもブラウザ側でもShift_JISを指定した上で、
IE6で通常のShift_JISファイルをXHRで読み込んで、文字化けするということは無いと思うので
gzip 圧縮か、Content-Type設定に原因があるかも。でも、仮にこれが解決してもXML処理の方がお勧めではあります。
151149
垢版 |
2006/07/28(金) 14:17:19ID:YlQHVubn0
いや iframe じゃなくてもいいか。考えたから暇な人は読んでみて。

<script type="text/javascript">
var data = new Array; // まずスレッド用の配列を作る
var pos = -1;
</script>
<script type="text/javascript" src="/test/read.js/operate/1000000000/1-"></script>
<script type="text/javascript" src="/test/draw.js"></script>

サーバ側は js ファイルを CGI で吐かせるようにする。

data[++pos] = "*********"; // " はエスケープ(書き込み時に " になってればそのままで)
data[++pos] = "*********";
data[++pos] = "*********";

で、吐くデータが n 個(1 個以上; 適当に)を超えたらデータ部の後ろに
次のセクションを読み込むスクリプトを書いた上で、

$js .= qq{data[++pos] = "$_";\n} for map { s/"/"/g; $_ } @data; "
$js .= q{document.write('<script type="text/javascript" src="/test/read.js/operate/1000000000/$next-">');}
if scalar @data >= $n;

このリクエストの Expires を超未来にする、て感じ。
難点はあぼーんが反映されないってことだけど。
152149
垢版 |
2006/07/28(金) 14:22:20ID:YlQHVubn0
× q{document...
◯ qq{document...
2006/07/28(金) 14:46:12ID:3rgozFxf0
>>151-152 そもそも,ブラウザでページ自体をリロードしたらどうなるか......
「そういう使い方はしないで内容更新時にはページ内の更新ボタンをクリックして下さい」
とか呼びかけようとしても,read.cgi 利用者層の多くを占めるライトユーザには
なかなか普及しなさそうな気も...... read.html に対して

    ExpiresActive On
    ExpiresDefault "access 1 week"

とか指定しても,ページ自体をリロードすれば HTTP リクエストは
発生するようです.いったん取り込んだ URL なら 304 にはなりますが.

で,今の DSO 版ではない昔の read.cgi には,HTML 整形せず dat の形式のままで
行単位の内容を返す raw mode ってのがありました(今は廃止).でも,HTML 整形するよりは
raw 形式の方が軽いとはいえ,結局サーバ側プログラム走らせることには変わらないんですよね.
そこに HTTP リクエスト増も加わるってことも考えれば......
2006/07/28(金) 14:58:27ID:636jpKTQP
作ってから考えればいいんじゃね
155149
垢版 |
2006/07/28(金) 15:08:55ID:dbg/okTO0
>>153
ttp://labs.cybozu.co.jp/blog/kazuho/archives/2006/02/utilizing_cache.php
このページに書いてあることを信用すると、 Expires ヘッダは
Last-Modified ヘッダと併用することでリクエストそのものが無くなるみたいだよ。
2006/07/28(金) 15:18:29ID:7fX0/+L20
WindowsのIE6では、更新ボタンを押した場合は再読み込みされるよ
157149
垢版 |
2006/07/28(金) 15:22:51ID:dbg/okTO0
>>156
そうなのか……それじゃぁ >>151-152 は使えないや。
2006/07/28(金) 15:37:48ID:3rgozFxf0
>>155 内側で読み込むデータってことね.それなら,今も実際に index.js で利用してて
効果は出てるようです.でも,外側の read.html のリロードまでは抑制できないかと.

で,>>151 は内部で読む方のリロードを抑制ってことか.でもそれだと今度は
dat が更新されてもなかなか反映されないってことになりそうな......
あと,そういう形で行単位の内容を返すなら

・ \n を探すためファイル内容をスキャン.
・ JavaScript 文字列にするなら,さらに " や \ をエスケープするためにスキャン.

こういうことやるぐらいなら,タグ付け加えて HTML 化ってのがそういう処理に比べて
べらぼうに重いとは思えません.もしべらぼうに重いとすれば,それはムダな処理をしてるからかと.
ある程度は重くなるでしょうけど,少なくとも HTTP リクエスト増加による負荷増より
ずっと重いなんてことはあり得ないような.
2006/07/28(金) 15:44:15ID:JuOh4RhP0
有効期限も長くし過ぎると、テストが十分でなくて不具合を混入させてしまったまま
リリースした時に困りますよ。失礼な言い方になるけど、ユーザーの大半は基本的に
馬○ですからね。不具合がある事を訴えることは出来ても、何が原因で
どうすればいいか思いつくことまでは出来ないのが多い。
まぁここに来て騒いでCtrl+F5を押せって言われる流れになるんでしょうけど。
160149
垢版 |
2006/07/28(金) 16:12:12ID:dbg/okTO0
>>158
キモは、ブラウザのキャッシュに入ってるデータはリクエストしないってとこだったりするのだけれど。
行単位がダメなら、やっぱり iframe なのかな?でもキャッシュが効くかどうかもわからない。
新着を探すためには、最後の位置を覚えとかないといけないし。これは、read.js の他に read.txt も必要かも。
そしてやっぱり、更新ボタンを押したらリロードしちゃうんでは、ちょっと微妙かな。

read.cgi のキャッシュの仕組みがよくわからないけど、多分、
最新 50 の後に全表示とか、キャッシュにデータが重複してても構わず処理するんでしょう。
サーバ側は知る術が無いしそれは普通なんだけど、そうならやっぱり。
161動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 16:16:12ID:lDXvnfU00
1レス1ファイルにするのが一番良い。
162ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 16:21:33ID:???0?BRZ(2585)
jsはwww.2chとか静的コンテンツ用のサーバにおいて、
datはqb5.2chの既存のサーバとかコネクションを切り分けるとかって
出来るんでしょうか?
2006/07/28(金) 16:24:12ID:JuOh4RhP0
んー、Gecko(Firefox)はできない可能性が高いけど、2ch.net同士だからなぁ。
164149
垢版 |
2006/07/28(金) 16:26:09ID:dbg/okTO0
js が別のサーバに置いてあったとしても、
js を読み込む(実行する) html が読みたい dat と同じドメインにあれば、dat は読み込めるよ。
2006/07/28(金) 16:26:33ID:3rgozFxf0
>>162 JavaScript 部分を HTML から分離して別のところに置く,ってのは
今の read.cgi や index.html でもやってます(www2.2ch.net/snow/index.js).
ただ,URL で鯖・板・スレを指定している限り,外側の read.html が
各所に散らばる状態はいかんともしがたいかと.
166ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 16:31:45ID:???0?BRZ(2585)
外側の read.htmlといいますと?
2006/07/28(金) 16:48:20ID:YGISL4lC0
>>166 例えば,
http://qb5.2ch.net/test/read.html/operate/1153819270/
という URL でスレを表示させる際の
http://qb5.2ch.net/test/read.html
のことです.
2006/07/28(金) 16:49:13ID:HmmSpj2e0?BRZ(1035)
代理

名前: !kab▲ ◆cZfSunOs.U
E-mail: sage
内容:
>>166 例えば,
http://qb5.2ch.net/test/read.html/operate/1153819270/
という URL でスレを表示させる際の
http://qb5.2ch.net/test/read.html
のことです.
2006/07/28(金) 16:50:12ID:HmmSpj2e0?BRZ(1035)
でっ。ごめんなさい
170ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 16:57:20ID:???0?BRZ(4585)
http://www.2ch.net/read.html&u=http://qb5.2ch.net/operate/dat/1153819270.dat
とかじゃまずいんでしょうか?
2006/07/28(金) 17:04:17ID:YGISL4lC0
>>170
>http://www.2ch.net/read.html&;u
2006/07/28(金) 17:06:20ID:YGISL4lC0
# >>171 ちょん切れたので......

>>170
>http://www.2ch.net/read.html&;u=http://qb5.2ch.net/operate/dat/1153819270.dat

& だとダメですが,? か / か # にすれば一応動きますね.
とはいえ,ブラウザによっては同一ホストという制限はあるかも.

まぁ,既存の URL との互換性を捨ててもいいならいろいろやりようはあります.
キャッシュを有効活用ということなら # を用いるのがベストです.
ただ,たとえそうしたとしても,それが普及するまでの間は従来式の URL が
当面そのまま残りますから......
173149
垢版 |
2006/07/28(金) 17:09:55ID:dbg/okTO0
js を実行する html と違うドメインの dat は、js からは セキュリティの関係で読み込めないよ。
他ドメインの js ファイルを実行することはできるから、>>151-152 なら大丈夫だけどね。
2006/07/28(金) 17:10:46ID:r+F+KIBY0
従来のアドレスにアクセスしたらそのアドレスに飛ばすっつーことか。
というかスキーム名要らなくない?
もっと言うとPATH_INFOでいいような。
2006/07/28(金) 17:13:51ID:zKffljcV0
セキュリティがドメイン単位なら問題ないような。
鯖単位だと別鯖にだせないけど。
176ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 17:18:29ID:???0?BRZ(4585)
>>173
ドメイン単位?サーバ単位?

同一ホストの制限のあるブラウザって大手ではどんなんがあるんでしょう?

どうせ.cgiでなくなるので、URLの互換性はあんまり気にしなくていいとおもいます。
2006/07/28(金) 17:19:47ID:YGISL4lC0
まぁ要は,? (QUERY_STRING) や / (PATH_INFO) を使うと,同一の read.html というファイルであっても
板・スレの指定が異なるとブラウザ側はそれぞれ別々のコンテンツとして扱ってしまうってことで.
# を用いて例えば
http://qb5.2ch.net/test/read.html#operate/1153819270/
のようにすれば,板・スレの指定が異なってもブラウザは同一コンテンツとして扱ってくれると.
178ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 17:23:39ID:???0?BRZ(4585)
おぉ、、そういうことなんですかぁ。
#すげー。
179149
垢版 |
2006/07/28(金) 17:25:13ID:dbg/okTO0
>>176
サブドメインを変えて試したことが無いから説得力が無いけど…
多分完全に一致するかどうかでチェックするんじゃないかな。2ch で言うサーバ単位になると思う。
ドメインを超えてアクセスできるとセキュリティホールみたいに見られるから、
大抵のブラウザ(IE、FF、Opera)ではクロスドメインのアクセスはできないよ。
2006/07/28(金) 17:28:17ID:TZJGLoaF0?BRZ(2211)
確かFQDN単位、だった気がする。あくまで気がする。
2006/07/28(金) 17:28:32ID:ko7HWZVp0
オフトピ

IE7β3では異なるドメイン間のサブフレーム移動はデフォルトで禁止
されてます。
(前までこの質問で賑わってました。)
2006/07/28(金) 17:32:22ID:YGISL4lC0
http://qb5.2ch.net/ を表示させた状態で

javascript:var h $3D window.XMLHttpRequest
? new XMLHttpRequest() : new ActiveXObject("Msxml2.XMLHTTP");
h.open("GET", "http://info.2ch.net/";, false);
h.send("");
alert(h.responseText);

を全部一行につなげてロケーションバーから入力すると,
IE も Firefox もダメっぽいですね.
h.open("GET", "http://qb5.2ch.net/";, false);
に変えれば Ok ってことで,どちらも「同一ホスト」という制限かと.
2006/07/28(金) 17:33:57ID:6Xyszskt0
Mozilla 1.7.x (Gecko) もopenの段階でエラーが出るね。
2006/07/28(金) 17:34:24ID:YGISL4lC0
>>182
×javascript:var h $3D window.XMLHttpRequest
○javascript:var h = window.XMLHttpRequest
2006/07/28(金) 17:36:40ID:6Xyszskt0
Internet Explorer 6.0 SP1 もopenの段階でえらー。
186tato
垢版 |
2006/07/28(金) 17:39:54ID:chE9END/0
セイムドメインというのはこういうこと。
http://www.mozilla-japan.org/projects/security/components/same-origin.html

XMLHttpRequestでは、どのブラウザでもクロスドメインリクエストは出せません。
187動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 17:48:40ID:t3XQDhSZ0
???????????????
188動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 17:48:45ID:+s1TuJnu0
こっかいぎじどうをばくはするよ
189tato
垢版 |
2006/07/28(金) 17:49:19ID:chE9END/0
外側のread.htmlと
その内側からAjaxでリクエストする.datは同じドメインでなければなりませんが
でも、同じ内側から呼び出す相手でも、Ajaxを実行する.jsファイル自体は、クロスドメインにおいてあっても大丈夫です。

ちなみに、もしdataスタイルをjsのJSONなどの書式にしてもよければ、Ajax以前の時代のクロスドメインなダイナミックロードというのもありますけれど。
http://game.gr.jp/mag2p/2/loadjs/loadjs.htm
2006/07/28(金) 18:05:20ID:kVfCz8VA0
read.js 全ての処理をさせる どこに置いてもおk
read.html read.jsを読ませるだけ datと同じドメインじゃなきゃ駄目。

read.htmlとdatが同じドメインなら、read.jsがdatと通信しても大丈夫
っていう感じ。
2006/07/28(金) 18:11:00ID:E5cyDbY60
パラメータを#で渡すと、リンクが全部紫色にならないかな?
192tato
垢版 |
2006/07/28(金) 19:14:11ID:+swShs5T0
2chの仕組みがまだ良くわからずに書いていますが、、、
ふと、思ったのですけれど、もしレガシーな仕組みを引きずらなくても良いなら、
.datファイルをとりにいくのではなくDB使うというのは無しなのですか?

1) hoge1.2ch.net/read.html#hogehoge (hoge1.2ch.net/read.htmlはキャッシュ)
2) static1.2ch.net/ajax.js (ajax.jsはキャッシュ)
3) hoge1.2ch.net/db (差分のみ)

1)から2)をロードして#hogehogeに対応するデータを3)から受けとり
ユーザーへはAjaxなレスポンスを返すとかの方がシンプルでいろいろできるかも。

>>191 #なら、カレントページが訪問済みになりますが、#hogeとかですよね?
2006/07/28(金) 20:43:32ID:3rgozFxf0
どっちでも逝けるようにしてみた.
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/l50
http://sunos.saita.ma/read-js/test/read.cgi#operate/1153615149/l50
2006/07/28(金) 20:46:11ID:65pSR6Fy0
>>193
すげぇ&乙です
195ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 21:44:51ID:???0?BRZ(4595)
>>192
現状より重くなる予感。。
2006/07/28(金) 22:11:24ID:N8hDBBv80
>>193
ime.st通ると#以降が消えるね。
2006/07/28(金) 23:07:21ID:3rgozFxf0
>>196 まぁ,ime.st (ime.nu) で

onload = function(e) {
    if (location.hash) {
        document.links[0].href += location.hash;
        document.links[0].firstChild.data += location.hash;
    }
};

のような JavaScript 入れてもらえれば解決するかと.
もっとも,JavaScript 切ってあるとどうしようもないけど......
2006/07/28(金) 23:13:20ID:A0brsR3K0
>>86がちょっと面白そうなので適当に動かしてみました。
http://www.janis.or.jp/users/segabito/sample/bind.html

sjisを変換せずに読めるのはいいのですが、ちょっといじると表示が止まったり、
リロードするたびに動いたり動かなかったりして、どうも安定しませんでした。
2006/07/28(金) 23:13:47ID:r+F+KIBY0
ブラウザ派急先鋒のまろゆきさん>>197これ入れてください
2006/07/28(金) 23:17:27ID:E5cyDbY60
>>197
その要望はime.nu登場時から言われていたけれど、
ひろゆ子さんという人がよくわからない理由で却下していました。

388 名前: 心得をよく読みましょう 02/02/22 13:20 ID:zXPGfNV8
>>377
↓こういうのを<body onload>かhtmlの最後に入れてください。
document.links[0].href+=location.hash
JavaScript使えるブラウザならIEだけじゃなくてたいてい通用します。
392 名前: ひろゆ子 ◆HRUNYAXA 02/02/22 13:30 ID:yVzdMBp6
javascriptをいれてしまうと、
googleにおこられそうで、、
801板のことをおいらにいわれてもわからんです。。
2006/07/28(金) 23:43:38ID:NVd2zaE20
Konquerorでも文字バケバケっぽいですね。
にわかユーザだからよくわからんけど。
2006/07/28(金) 23:50:10ID:E5cyDbY60
read.cgiの負荷を大幅に減らすことが目的なら、
WinIEだけを専用のスクリプトに飛ばせば目標達成かもしれないですね。  (それじゃあ面白くないって?)
2006/07/29(土) 00:02:05ID:r+F+KIBY0
ふと思った。2chユーザーのUA割合ってどうなってるんだろうな。と
204root▲ ★
垢版 |
2006/07/29(土) 01:15:55ID:???0?PLT(10016)
さてと。

>>193 を、dso あたりに仮に入れてみるとしたら、
.htaccess 的には、どうすればいいのかしら。
2006/07/29(土) 01:26:14ID:/t2rUAyV0
>>203
携帯とIEで八割は占めるんじゃないかな?
2006/07/29(土) 01:49:35ID:Y5mKI9rz0
実用性を考えると100レスずつ表示ぐらいなら、ブラクラまでは行かないレベルになりそうかな?
2006/07/29(土) 10:22:03ID:vqF7YG+l0
Opera8.54から>>193を見てみたら初回取得時は正常に表示されるけど、
再読み込みもしくは再度開きなおすと読み込み中のまま先に進まなくなった。
2006/07/29(土) 12:21:50ID:98QBwhrS0
>>204 どっちにしろ httpd.conf に入れなければならない設定もあるんで,
全部まとめて httpd.conf でもいいかも......
----------------------------------------------------------------------
LoadModule charset_lite_module libexec/mod_charset_lite.so

AliasMatch ^/(\w+)/dat-utf8/(\d+\.dat)$ /home/ch2xxx/public_html/$1/dat/$2
<Location /*/dat-utf8/*.dat>
    SetOutputFilter XLATEOUT
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
    AddDefaultCharset UTF-8
    Header append Cache-Control max-age=5
</Location>

Alias /test/bbs-utf8.cgi /home/ch2xxx/public_html/test/bbs.cgi
<Location /test/bbs-utf8.cgi>
    SetInputFilter XLATEIN
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
</Location>

<Files read.html>
    AcceptPathInfo On
</Files>
<Files read.cgi>
    AcceptPathInfo On
    ForceType text/html
    SetHandler default-handler
</Files>
----------------------------------------------------------------------
mod_charset_lite には >>111 のパッチが必要.ビルド時には >>114 をチェック.

# 今は read.html 中に JavaScript を直接記述してますが,実運用段階では分離する方向で.


>>207 Opera では JavaScript のエラーダイアログか何か出ますかね?
何かエラーが発生してるとすれば,どんなエラーなのかがわかれば対処しやすいですが.

# というか,sunos.saita.ma には mod_headers が入ってないので
# Cache-Control ヘッダを出力してませんが,そのせいかな......?
2006/07/29(土) 12:38:30ID:vqF7YG+l0
>>208
javascriptコンソールのエラーは

読み込み中。。。
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/l50
Event thread: mouseover
Error:
name: TypeError
message: Statement on line 254: Could not convert undefined or null to object
Backtrace:
Line 254 of User JS script
dt.innerHTML.match(/^(<[^>]*>)?(\d+)/);
Line 217 of User JS script
setResNumber(t.previousSibling);
At unknown location
[statement source code not available]

このような感じです。
2006/07/29(土) 13:01:55ID:98QBwhrS0
>>209 どもども.しかし......

>Line 254 of User JS script
>dt.innerHTML.match(/^(<[^>]*>)?(\d+)/);
>Line 217 of User JS script
>setResNumber(t.previousSibling);

少なくとも,こちらが作った JavaScript には上記のようなステートメントは
含まれてないんですが(mouseover イベントも使ってないし),
どこで入り込んだんだろう......?
もしかして,壺か何かのスクリプトと衝突してる......?
2006/07/29(土) 13:05:06ID:IWp6FTEr0
> User JS script
212root▲ ★
垢版 |
2006/07/29(土) 13:27:00ID:???0?PLT(10017)
>>208
mod_charset_lite って、
Apache 2.2 以降じゃないとだめなんでしたっけ。
2006/07/29(土) 13:31:34ID:vqF7YG+l0
あー、すいません。
テストするときにはUSER.JSを切っていたんですが、
切ってなかったときのエラーログのようです。

それ以外ではどんなエラーも出ていないようですが、再読み込みをすると>>57のIEの時のようになってしまいます。
2006/07/29(土) 13:38:15ID:98QBwhrS0
>>212 2.0 と 2.2 のモジュールは基本的にソースレベルでは互換性があるので平気かと.
(ただしバイナリレベルの互換性はない)

>>213 なるほど......キャッシュの問題なんですかねぇ.
(sunos.saita.ma では設定不能ですが)Cache-Control 等のヘッダで改善するかどうか......
215root▲ ★
垢版 |
2006/07/29(土) 13:50:24ID:???0?PLT(10017)
>>214
> 2.0 と 2.2 のモジュールは基本的にソースレベルでは互換性があるので平気かと.
> (ただしバイナリレベルの互換性はない)

なるほど、それならいけそうですね。
dso を 2.2 系にするといろいろめんどいので(read.cgi バイナリとか)。

今日はもうちょっとしたらお出かけなので、
早くても今夜ぐらいあたりからかなと。
2006/07/29(土) 14:40:12ID:98QBwhrS0
>>111 のパッチを 2.2.3 向けに更新しますた.
217ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 15:03:40ID:???0?BRZ(4596)
>>199
どういうふうに使うのか全然わかってなかったり。。。
2006/07/29(土) 15:13:55ID:98QBwhrS0
>>217 ime.nu(って今落ちてますか?)の <head>〜</head> 中に

<script type="text/javascript" defer><!--
onload = function(e) {
    if (location.hash) {
        document.links[0].href += location.hash;
        document.links[0].firstChild.data += location.hash;
    }
};
//--></script>

って入れてもらえばいいかと.
2006/07/29(土) 15:28:14ID:kqq5BMIj0?BRZ(2395)
>>217
俺に★くれればおk
2006/07/29(土) 15:31:35ID:iSW8jgHp0?BRZ(2223)
すれ違いだけども、ime.(nu|st)、落ちまくりなのをなんとかしてほしかったり。
2ちゃんでリダイレクトを用意したりはしないのかしら。
2006/07/29(土) 15:58:03ID:RFhDAZJL0
>>218
>>200
当時の管理人のひろゆ子さんはjavascriptに否定的だったけど、
今の管理人のひろゆきさんはOKしてくれそうですね。
222ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 16:07:15ID:???0?BRZ(4596)
あいあい
2006/07/29(土) 16:19:40ID:kqq5BMIj0?BRZ(2395)
★下さい
2006/07/29(土) 17:03:06ID:5tGYbn9Q0?BRZ(1019)
http://sv2ch.baila6.jp/server.cgi?server=ime.nu
http://sv2ch.baila6.jp/server.cgi?server=ime.st

ロビンちゃんが転けまくっているのでしょう(泪)
225動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/29(土) 19:07:06ID:RoQ9c9iw0
これは良いエセAjaxブラウザですね。なかなかいいですね。
でも若干読み込みが遅い気がする・・・
2006/07/29(土) 19:19:47ID:WE2YiTKi0
このスレ見てテキストのDATはXMLで保存するに限ると学習した
2006/07/29(土) 19:57:11ID:rr/RhnKa0
難しい話は良く判らないけど、このプロジェクトは
普通のブラウザを2ch専ブラ化するっていう認識で
OKなのかな?

そうすると、広告を見る人が居なくなる予感……

ひろゆきはそれでいいの?
2006/07/29(土) 20:29:03ID:f8aoiCK80
>>227
>>9
229ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 20:29:41ID:???0?BRZ(4596)
>>218
いれたけど、なんも変わらんですよ。。
http://www.ime.nu/n404.cgi/fefefefefe#fefefefe

>>227
そういうのは後回しで。
2006/07/29(土) 20:31:07ID:kqq5BMIj0?BRZ(2395)
とりあえずキャップ下さいですよ
2006/07/29(土) 20:33:37ID:pXmIk69H0
JSがOFFだと
http://n404.cgi/fefefefefe
で、
ONだと
http://n404.cgi/fefefefefe#fefefefe
になったから、正常に動作していると思うけど。
2006/07/29(土) 20:34:12ID:WE2YiTKi0
これが軌道に乗った暁にはJs周りの脆弱性が見つかるたびに祭りになる
その中で名をあげるんだ
233ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 20:36:46ID:???0?BRZ(4596)
おぉ、ほんとだ動いてた。動いてた。
すげー。
234ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 20:38:10ID:???0?BRZ(4596)
http://www.ime.nu/efefe#fefefefe

http://efefe/#fefefefe#fefefefe
別のサイトにジャンプしようとしています。宜しければ上記のリンクをクリックしてください

#以降が2回でちゃうのはどうしてなんすかね。
2006/07/29(土) 20:46:21ID:pXmIk69H0
おお、IEだと2回でるね。

Sylera(Gecko系)だと普通に1回だわ。
236ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 20:52:12ID:???0?BRZ(4596)
いやぁ、javascriptはとんとわからんですよ。
2006/07/29(土) 20:57:34ID:kqq5BMIj0?BRZ(2395)
ブラウザごとに処理変えればいいんじゃない
238ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 21:04:11ID:???0?BRZ(4596)
>>237
どういうふうにやるんすか?
239root▲ ★
垢版 |
2006/07/29(土) 21:09:39ID:???0?PLT(10017)
UA を見るのかな?
2006/07/29(土) 21:10:30ID:7OpPr8rsP
UA偽装されたらひとたまりもないな
2006/07/29(土) 21:11:39ID:MJrYjXzQP
ヒント:JavaScriptの返すUA vs HTTPヘッダのUA
2006/07/29(土) 21:12:05ID:Y5mKI9rz0?BRZ(3217)
出来る処理と出来ない処理判定繰り返すのが定番かな
2006/07/29(土) 21:13:48ID:F0BE+JCI0
こうこくgaippaiあるからー
onloadのたいむんぐがむちゃくちゃなよかんです♪
2006/07/29(土) 21:19:48ID:kqq5BMIj0?BRZ(2395)
>>238-240
とりあえずUAで処理分ければいいんじゃないかね
偽装するような奴が普通のブラウザで見るとは考えにくいから
2006/07/29(土) 21:28:29ID:F0BE+JCI0
>>243の書き込み失礼しました・・・


んで、IE6だと document.links[0].firstChild.data += location.hash; をコメントアウトしても
IE6だと表示もきちんと?#fefefefeが表示されますね
不思議です。
2006/07/29(土) 21:32:42ID:F0BE+JCI0
IEのバグの予感・・・

とりあえずブラウザ判別なんて難しいことやんらなくても、



<script type="text/javascript" defer><!--
onload = function(e) {
if (location.hash) {
document.links[0].href += location.hash;
document.links[0].firstChild.data += location.hash;
}
};
//--></script>




<script type="text/javascript" defer><!--
onload = function(e) {
if (location.hash) {
document.links[0].firstChild.data += location.hash;
document.links[0].href += location.hash;
}
};
//--></script>



にすればOKなはず。
247ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 21:34:41ID:???0?BRZ(4596)
おぉー、、解決しましたー。

何がどういう仕組みなのか皆目わからないまま。。。
http://www.ime.nu/tetete#fefefe
2006/07/29(土) 21:38:29ID:s2pGeeR00
DOMとかイベントハンドラとかそういうもの
2006/07/29(土) 21:39:21ID:Y5mKI9rz0?BRZ(3217)
href書き換えると中身まで書き換えるっていったい何してくれてるんだろIE
2006/07/29(土) 21:42:22ID:F0BE+JCI0
わーい酔っ払ってるけどひろゆきの役に立ったと♪

>>247
IEのばぐなんできにしないでねー

>>249
中身と属性が一致するちょきのみ勝手に両方書き換える予感
IE6はセキュリティといい市場2番目に最悪なブラウザな気がしなくもない
2006/07/29(土) 21:44:11ID:Y5mKI9rz0
>>250
なるほど
2006/07/29(土) 21:44:17ID:kqq5BMIj0?BRZ(2395)
IEとFirefoxで正常動作を確認したけど他のブラウザではどうなの?
253紅玉
垢版 |
2006/07/29(土) 21:50:42ID:FhPqEwUW0
Netscape Communicator4.8も愛用のFuuunも死亡するやもしれないと居う危機感を抱いています。
実際>>193のURLを読み込もうとしたら

読み込み中。。。

1 :[読み込み中。。。]:[読み込み中。。。]
[読み込み中。。。]

0 kB [ 2ちゃんねる 3億PV/日をささえる レンタルサーバー \877/2TB/100Mbps]

この状態から進みませんでした。

◆◇パンサー導入してもNetscape 4.x ◇◆ 第5章
http://pc7.2ch.net/test/read.cgi/mac/1068312522/l50
でも危機感が募っています。
2006/07/29(土) 21:54:41ID:F0BE+JCI0
ネスケ4じゃさすがにAjax関係は対応してないんじゃないかな
2006/07/29(土) 21:57:55ID:kqq5BMIj0?BRZ(2395)
イメヌもread-jsも重いなぁ
スペック低いとキツイ。専ブラだからいいけど
2006/07/29(土) 22:02:43ID:FhPqEwUW0
追加です。

Internet Explorer5.1.7
iCab2.9.9a
iCab30Beta382
マカエレ1.0x23
全滅

wamcom-131-macos9-20030723
かろうじて対応
2006/07/29(土) 22:18:51ID:Y5mKI9rz0
最悪、XMLHttpRequestが使えればどうにかなる。
使えないなら従来のread.cgiって感じじゃね。
2006/07/29(土) 23:24:13ID:kqq5BMIj0?BRZ(2395)


とにかくキャップが欲しい
2006/07/29(土) 23:29:05ID:4nbEmx5FP?PLT(18511)
ひろゆきポイントくれくれ
2006/07/30(日) 01:15:35ID:WxPqGT8x0
お......いない間に ime.nu の方は事が進んでたのね.各位乙ですた.


で,dso でやる時はフィルタ通した dat を mod_cache でキャッシュってのもやって,
さらに黒山羊対策の実験もしてうまくいくなら雪だるまにフィードバック,ってのはどうでしょう
......と思ったけど,mod_cache 使うなら 2.0 系より 2.2 系の方がいいんですよね.う〜む......
2006/07/30(日) 08:58:03ID:u3RecharP
>>257
ぶっちゃけ、どうしようもない時だけread.cgiに飛ばすだけてもcgi稼働率は下がりそうだからなぁ。
2006/07/30(日) 14:24:39ID:sgRHt0LW0
先生!久しぶりに運用情報に来てみたら面白そうなスレッドを見つけました。
試せるレベルくらいまで進んでますか?
263ひろゆき@どうやら管理人 ★
垢版 |
2006/07/30(日) 17:25:33ID:???0?BRZ(4603)
>>262
サンプル動いてますよ。
2006/07/31(月) 22:18:34ID:TvTC4sxy0?DIA(50200)
  ヽ=熊=/…なんかとまっちゃったから
   (・(エ)・)  ひろゆきに10ポインツあげておこう。
   <|  |つI
.    | |
2006/07/31(月) 22:46:51ID:9aMrZODH0?BRZ(2400)
しゃぶれよ
2006/08/01(火) 07:12:05ID:SNbQsxKE0
関連キーワードは
----------------------------------------------------------------------
var keywords = ["キーワード1", "キーワード2", "キーワード3"];
----------------------------------------------------------------------
のような形式で返してくれる I/F があると read.html にはふさわしいのかも.
もっとも,これはそのうちどうのこうのって話があったっけ......
267ひろゆき@どうやら管理人 ★
垢版 |
2006/08/01(火) 09:40:57ID:???0?DIA(30035)
( ̄ー ̄)ニヤリッ
NGNG
ほほう
269root▲ ★
垢版 |
2006/08/01(火) 11:40:03ID:???0?PLT(13231)
どうのこうの、ぼちぼちってかんじですかね。

しかし8月は私の本業が黒焦げ状態だという噂も、、、。
ちなみに8月の夏期休暇はありません(とれません)。むぎゅー。
270紅玉
垢版 |
2006/08/01(火) 11:50:20ID:Jmc1YKlo0
ネスケは見捨てられたと

◆◇パンサー導入してもNetscape 4.x ◇◆ 第5章
http://pc7.2ch.net/test/read.cgi/mac/1068312522/l50

伝えてこよう。
271root▲ ★
垢版 |
2006/08/01(火) 11:52:12ID:???0?PLT(13231)
たぶん UA とかで調べて、NN 4.x だったらレガシーな read.cgi にフォールバックするとか、
そういう動作になるんでしょうね。

つまり、JavaScript が動かないクライアントと同じ動作になると。
2006/08/01(火) 12:47:04ID:5eC2PN/s0
2chもajax化するのかあ
将来的に専用ブラウザみたいなこともできるのかな
IDポップアップとか画像プレビューとか
2006/08/01(火) 12:48:05ID:QJZyLmbf0
安定してきたころにソースをパクろう
274動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/01(火) 13:30:45ID:tT304PHv0
Ajaxか
なかなか面白い試みじゃん
2006/08/01(火) 16:31:53ID:SNbQsxKE0
>IDポップアップとか画像プレビューとか

ってこんな感じでいいのかなぁ......
http://sunos.saita.ma/read-js/test/read.html#operate/1153830220/-100
2006/08/01(火) 16:36:38ID:3jvDKarw0
>>275 うほ。インラインサムネイル! 感動しますた
2006/08/01(火) 16:41:32ID:zd2sSQcd0
>>270
Winなら8以降かSeaMonkeyかFirefox、MacならSeaMonkeyか
Firefox使えと伝えて置いて下さい。
2006/08/01(火) 16:47:10ID:5eC2PN/s0
>>275
おおー いい感じです
2006/08/01(火) 17:07:23ID:7tohUCL+0
画像は面白いけど、実際入れるとなると微妙ですねえ(2chがプロキシ建ててくれるならともかく。)
2006/08/01(火) 17:33:57ID:SNbQsxKE0
そういえばそうか......<画像
2006/08/01(火) 17:38:01ID:SNbQsxKE0
しばらくしたら外しとこう<画像インライン化
それまでは一時的なデモンストレーションってことでw
2006/08/01(火) 20:20:48ID:ZidCRIcQ0
SunOSちゃん、なんて恐ろしい子...
283ひろゆき@どうやら管理人 ★
垢版 |
2006/08/01(火) 20:59:42ID:???0?DIA(30037)
http://sunos.saita.ma/read-js/test/read.html#operate/1153819270/
あれれ。。。
2006/08/01(火) 21:01:55ID:I3RpTcvb0?2BP(7)
[エラー]

1 :[エラー]:[エラー]
Not Found
2006/08/01(火) 21:02:44ID:I3RpTcvb0?2BP(7)
[ここ壊れてます]

1 :[ここ壊れてます]:[ここ壊れてます]
[ここ壊れてます]
2006/08/01(火) 21:03:03ID:trcLaVqn0
せっかくのヒット作なのに
2006/08/01(火) 21:03:25ID:I3RpTcvb0?2BP(7)
あれ?リロードしたらこうなった。
2006/08/01(火) 21:03:51ID:vI3nSnE10
単にdatファイルが消えてるみたい
http://sunos.saita.ma/read-js/operate/dat/1153819270.dat
2006/08/01(火) 21:05:05ID:FDNIte9I0
おまwww
290紅玉
垢版 |
2006/08/01(火) 21:06:13ID:Jmc1YKlo0
>>277
>MacならSeaMonkeyかFirefox使えと伝えて置いて下さい。
これはMacOSXの場合の話ですね。

>>270ですが、270のスレはMacOS9の人の為の物です。
しかし、>>256で示したようにMacOS9でも動作するwamcom-131-macos9-20030723
が動作しますし、>>271でrootさんが示されたようにNetscape Communicatorでも
大丈夫なようにしてくれそうですので取りあえず心配しなくて良いかも知れません。

Mac専用の専ブラのマカー用もまだしばらくはOS9に対応していてくれそうですし。
2006/08/01(火) 21:10:45ID:SNbQsxKE0
>>283 あぁ,dat は sunos.saita.ma に手動で突っ込んでるのだけしかないですw
http://sunos.saita.ma/read-js/operate/dat/
mod_charset_lite もない(共用鯖で入れられない)ので UTF-8 への変換も手動で.
http://sunos.saita.ma/read-js/operate/dat-utf8/

まぁ,今このスレの dat も入れますた.
292紅玉
垢版 |
2006/08/01(火) 21:10:53ID:Jmc1YKlo0
>>256で動作が確認出来ていたwamcom-131-macos9-20030723で試してみました。

http://sunos.saita.ma/read-js/test/read.html#operate/1153819270/
[エラー]

1 :[エラー]:[エラー]
Not Found

http://sunos.saita.ma/read-js/operate/dat/1153819270.dat
404
2006/08/01(火) 21:12:12ID:ZidCRIcQ0
SunOsは才能の宝石箱や〜
2006/08/01(火) 21:31:06ID:UxELfBFh0
>>283
つまり、実際にdatが取得できないとテストとしての意味がないということですかな?
2006/08/01(火) 21:33:21ID:SNbQsxKE0
まぁ,そのうちむむむさんが dso 鯖に入れてくれるんじゃないかと......
296ひろゆき@どうやら管理人 ★
垢版 |
2006/08/01(火) 21:43:36ID:???0?DIA(30037)
http://sunos.saita.ma/read-js/test/read.html#operate/1153615149/
でました。でました。
どうもですー。
2006/08/01(火) 22:26:34ID:UQ19SH1f0
Personalizedがあったらいいよなあ、と夢見
2006/08/01(火) 22:33:36ID:3M2e7Ivk0
>>290
Classic環境のNetscape 7.02でも文字化けしてダメですた。
一応参考までに。
2006/08/01(火) 22:49:14ID:fxPK2drM0
これはすごい
2006/08/01(火) 23:11:47ID:SNbQsxKE0
画像インライン化機能は外しますた......

で,>>298 のような文字化けなんかもヘッダの設定で何とかなるかどうかですね.
そのあたりも mod_headers の使えない sunos.saita.ma だとアレなんで,
dso に入れてもらったら確認ってことで......
301root▲ ★
垢版 |
2006/08/01(火) 23:38:05ID:???0?PLT(13231)
>>295
例えば、SunOS さんが dso サーバに入ってみるとか。

# 今日は「体を休める日」につき、作業は基本的にここまでで。
2006/08/01(火) 23:52:26ID:SNbQsxKE0
>>301 えーと,1U の鯖に入れるようになるには相当ダイエットしないと(ry



ってのはともかく,入れるようになるなら確かにそれも一つの方策かも......
2006/08/01(火) 23:58:38ID:5eXO01Fb0
ええーっと、こうですかね
ttp://s00516.pussycat.jp/neko/hairuneko52.jpg
304root▲ ★
垢版 |
2006/08/02(水) 00:04:00ID:???0?PLT(13231)
PC たたむ前に見たら、早くもご本人からのレスが、、、。

>>302
> ってのはともかく,入れるようになるなら確かにそれも一つの方策かも......

方策ですね、えぇえぇ、方策ですとも。
というか、入れないなら、どうすれば入れるようになるかの方策を考えるのが(りゃ。

いかがでしょうか。> 管理人
これってつまり、>>267 ということでいいのかしら。

…今日はここまで。おやすみなさい。
2006/08/02(水) 00:14:17ID:ctgBOFQy0
>>303 かわいいですね.でも 1U だとまだまだ......

>>304 ともあれ,乙です&お休みなさい.


# てか,何が起こるのかな......ドラえもんが登場して鯖に入れるように
# スモールライト渡されるとか......
2006/08/02(水) 00:46:47ID:3x1rag2R0
つ SunOs ★
307ひろゆき@どうやら管理人 ★
垢版 |
2006/08/02(水) 01:44:23ID:???0?DIA(30038)
>>304
いいんでないすかね。
( ̄ー ̄)ニヤリッ
2006/08/02(水) 01:51:01ID:FCnP1EDLO
( ̄ー ̄)ニヤリッ
2006/08/02(水) 01:54:50ID:oIYUbp6G0
>>307
どうか眠らせてあげてくださいです。。。
             「 ̄ `ヽ、   ______
             L -‐ '´  ̄ `ヽ- 、   〉
          /           ヽ\ /
        //  /  /      ヽヽ ヽ〈
        ヽ、レ! {  ム-t ハ li 、 i i  }ト、
         ハN | lヽ八l ヽjハVヽ、i j/ l !
         /ハ. l ヽk== , r= 、ノルl lL」
        ヽN、ハ l   ┌‐┐   ゙l ノl l
           ヽトjヽ、 ヽ_ノ   ノ//レ′
    r777777777tノ` ー r ´フ/′
   j´ニゝ        l|ヽ  _/`\
   〈 ‐ _,,..,,,,_     lト、 /   〃ゝ、
   〈、ネ./ ;' 3  `ヽーっ.lF V=="/ イl.
   ト |l  ⊃  ⌒_つ とニヽ二/  l
   ヽ.|`'ー---‐'''''"  〈ー-   ! `ヽ.   l
      |l夜は眠い    lトニ、_ノ     ヾ、!
      |l__________l|   \    ソ
2006/08/02(水) 04:45:36ID:2IhGNaMD0
>>271
それは考え方が逆だべ。

> たぶん UA とかで調べて、NN 4.x だったらレガシーな read.cgi にフォールバックする

UA とかで調べて、動作に問題ないとわかってるものなら read.html(?) に行く
にしないと。

と、以前の root 氏なら考えたと思うんだが。
2006/08/02(水) 05:53:40ID:eARyDVLT0
むにゃむにゃ。

>>307
了解です。niyr

>>311
オプトアウトではなく、オプトインですか。
つまり、そのぐらいのものであると。< JavaScript
2006/08/02(水) 05:57:02ID:eARyDVLT0
う、レスアンカーの番号が。

ま、いっか。
今は二度寝するです。ぐーぐー。
2006/08/02(水) 08:00:51ID:yb5nnuKC0
>>310
負荷対策も兼ねてるのだから、マイノリティの方がコスト高くなるのが当然では
2006/08/02(水) 10:37:08ID:Jn2ttkRJ0
これは人大杉のときでも読めるようにするのかな。
2006/08/02(水) 10:48:17ID:JKe/oxvK0
CGI叩かないなら人多杉っていう概念そのものがなくなるんじゃね?
2006/08/02(水) 12:43:04ID:ctgBOFQy0
まぁ,メジャーなブラウザを一通りカバーすればシェア的には9割以上は逝くでしょうし.
特に JavaScript のようなものは,作る立場からしても,挙動のよくわからない
マイナーなものまで対処するより,メジャーなところを押さえておけばいいという方が
遙かに楽ではあります......ってことで,動作確認ができたブラウザを
JavaScript 版に回すホワイトリストに入れるって形にすればいいかと.
2006/08/02(水) 16:18:03ID:Jn2ttkRJ0
セガBBSはサターンモデムでもチェックしていたんだろうな。
2006/08/02(水) 18:41:49ID:8ICmKuC30
NN4以下なんて考慮するだけ資源の無駄。
2006/08/02(水) 20:02:10ID:i1jGv1TB0
紅玉タンが動作確認してくれたけど、os9.1のicab3.0で文字化けなく表示されてまつ
スレ内の外部リンクはundefinedになってまつが。
ただ、iCabは激遅なので、
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/l50
で試しますた。
os9.1のmozillaではスレタイの下に出る入力ボックスが出ないでつ
320紅玉
垢版 |
2006/08/02(水) 21:49:38ID:8QIZMHJ50
>>319
私が試しましたのはベータ版では無い2.9.9です。
“iCab3.0Beta382”では激遅ながら表示するのは確認しましたが未だ開発途上版ですので
この先どう変わるかもわからないので報告いたしませんでした。

また、“wamcom-131-macos9-20030723”はMozilla 1.3.1 をベースに安定性と、
セキュリティーを向上させるために数百のパッチ を当てた安定志向独自ビルドですので一概に
Mozillaと一緒くたにしてはいけないと考え、別にしています。

ちなみに“iCab3.0Beta382”と“wamcom-131-macos9-20030723”では
“wamcom-131-macos9-20030723”の方が早いです。
2006/08/02(水) 22:15:31ID:o2uQuvy60
>>310
それじゃread.cgiをすべてのクライアントで一度は叩いちゃうじゃない。
負荷対策にならない。

つーかここまで誰も話を持ち出してないのが不思議だがレス番号指定はどうする
つもりなの
現状ではCPUが貴重で転送料をじゃぶじゃぶ使った方が引き合うのかな
2006/08/02(水) 22:18:25ID:3aab7Zck0
いや、Webサーバーの機能使ってread.htmlかread.cgiかを選べるのよ。
2006/08/02(水) 22:22:09ID:3aab7Zck0
レス番号指定、既に可能
http://sunos.saita.ma/read-js/test/read.html#operate/1153615149/57
http://sunos.saita.ma/read-js/test/read.html#operate/1153615149/57-
http://sunos.saita.ma/read-js/test/read.html#operate/1153615149/57-100
324319
垢版 |
2006/08/02(水) 22:30:26ID:3vaKMYPP0
>>320
いや、>>256で全滅リストにicab3.0が入っていたんで。。。
ここでmozillaというのは1.3.1とwamcomで同じ結果だったからでつ。
もちろん、icabよりmozillaの方が快適でつ。
単なる動作報告のつもりだったんだけど。。。
2006/08/02(水) 22:35:49ID:ctgBOFQy0
>>319-320 >>324 報告どもです.自分では Mac に関して直接確認できないので助かります.

>>321 振り分けるとすればたぶん mod_rewrite とか使うのではないかと.

あと,↓ということで現状では転送量はあまり問題ではないようです.
http://qb5.2ch.net/test/read.cgi/operate/1149664022/81-82n

# なんか,むしろ「トラフィックを増やしてピアリングを有利に(ry」
# とかいう話も出てくるぐらいのようなんでw
2006/08/02(水) 22:49:33ID:9bsIBfcX0
.cgiにこだわらなければmod_negotiationも使えそうに思えるが、使えないや。
2006/08/02(水) 23:31:04ID:+rLhTOLXP
スレ違いですまんけど、
>>325
GZIPをなしにする方が、ありよりも負荷が減るんじゃないの?
2006/08/02(水) 23:37:15ID:ctgBOFQy0
>>327 確かにそうかも,ってか圧縮なしなら sendfile() 一発だから
遙かに効率的ではあります.
2006/08/03(木) 00:58:57ID:EvHMU1Kz0
ちょうど8月だし、毎年恒例の「2ちゃんねる閉鎖危機」を演出しながら
JavaScript版を導入していくのはどうだろう。

・サーバーの負荷で2ちゃんねる閉鎖の危機!
・次々と閉鎖していく掲示板
・そこでJavaScript導入、一気に負荷が16分の一に!
・感動のFLASH作成
・BGM:蛍の光
2006/08/03(木) 01:18:48ID:dKbGb89K0
>>329
bbspinkがタイムリーですよ
2006/08/03(木) 01:42:42ID:UC2mE9Vf0
何気に運営来て見たら面白いことになってるし
サンプルすげー
管理人の気まぐれをここまで形にするなんて
あんた達すごいよ感動した
332 ◆Puttyan8hs
垢版 |
2006/08/03(木) 02:05:22ID:GfgoNoFE0?2BP(239)
ここにいる人たちのスキルってすごいって感じた
自分は最近触れたばっかだからわかんないけど
2006/08/03(木) 03:38:50ID:WFosrDT30
アドレスバーで移動ができんな
2006/08/03(木) 03:46:26ID:WFosrDT30
うーむ、スクリプトが何らかの理由によりエラーになるとスレも読めなくなるのか・・・
例外処理である程度は回避可能なのかな
2006/08/03(木) 03:59:08ID:WFosrDT30
レス番表示のあと全部を押すとフリーズしたみたいになるなあ
しかも戻るでレス番表示に戻れない
336紅玉
垢版 |
2006/08/03(木) 11:40:38ID:necJHHiA0
>>324
> いや、>>256で全滅リストにicab3.0が入っていたんで。。。
すんません。たぶん激重だったか何かでダメだと判断したんです。
2006/08/03(木) 13:34:35ID:H6HyNacD0
>>333-335
>アドレスバーで移動ができんな

例えば
http://sunos.saita.ma/read-js/test/read.html#operate/1153615149/l50
を表示してる時に
http://sunos.saita.ma/read-js/test/read.html#operate/1153830220/l50
をロケーションバーから入力して意図した通りに表示されない,という意味なら
それはブラウザの仕様ってことですね.「"read.html" というページ中の
"operate/1153830220/l50" という場所に移動」と解釈することになり,
"read.html" というページ自体はそのままということになってしまうので.
この問題に対処するため,例えば上部の「全部 1- 101- 201- 301- ...」や
下部の「全部 前100 次100 最新50」というリンクでは JavaScript で
細工してるわけですが...... まぁロケーションバーから直接入力した場合は
その後にリロードすれば正常に表示されるかと.

>レス番表示のあと全部を押すとフリーズしたみたいになるなあ

たぶん,長いスレで全部表示する場合は重くて時間がかかるのかと......

>しかも戻るでレス番表示に戻れない

これは,上記のような細工による影響ですね.
2006/08/03(木) 20:08:39ID:dKbGb89K0
location.hashの変更ってブラウザで検出できないの?
そんなことないと思うんだが
2006/08/03(木) 21:19:47ID:/FiyHJa90
タイマーで監視するとか
2006/08/03(木) 21:37:48ID:H6HyNacD0
>>338-339 read.html までが同じで # 以降だけを変更した場合,
ページを再ロードせず # 以降で指定された id (またはアンカー)を探し
その場所に移動する,という挙動になるようです.
つまり現在表示中のページ内での移動だけが行われるということで,
load イベントは発生しないようです.そこで,「全部 1- 101- 201- 301- ...」
等のリンクについては onclick イベントハンドラを使って細工してるんですが,
ロケーションバーから直接入力された場合はしょうがないような......
setInterval() とか使ってロケーションバーの変更をポーリングするってのは
あまりに効率が悪すぎるし(どれだけのユーザがそういう使い方するかわからないのに
無駄に CPU パワーを消費するだけのような気がするし).
「そういう使い方する場合はロケーションバーに入力後リロードして下さい」
ってことにした方がずっと単純明快という気がします.
2006/08/03(木) 21:47:57ID:H6HyNacD0
>>340
>setInterval() とか使ってロケーションバーの変更をポーリングする

方法のもう一つの問題点はページ内リンクですね.>>nnn で指定したレスが
現在表示中のページ内にある場合は,再レンダリングせずその場所に
移動するようになってますが,前述のようなポーリングをすると,
そのレスだけを表示するような再レンダリングが発生してしまいます......
342動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/05(土) 12:29:27ID:GyU8gfrP0
VIPのread.cgiを早くこれにしてくれw
343紅玉
垢版 |
2006/08/08(火) 18:16:36ID:pQC/z9+S0
みんな夏休み進行で一時急死
2006/08/08(火) 22:18:07ID:69XZcASc0
むむむさんは8月休み取れないとか言ってたような気がするけど,
短いとはいえ休みが取れたようで,めでたしめでたし.


で,read.html はとりあえず dso に突っ込んだら,動作確認とか
ブラウザ振り分けの RewriteRule 考えるとか,そんな感じかな.
345ひろゆき@どうやら管理人 ★
垢版 |
2006/08/10(木) 22:21:08ID:???0?DIA(30600)
とりあえず、何がネックなんでしたっけ?
2006/08/10(木) 22:26:46ID:si5T+ZMiP
首がネックです。
2006/08/10(木) 22:27:16ID:/wdxfOa/0
ピートロってうまいよね
2006/08/10(木) 22:28:00ID:3lbMy+v60
レスもネックです。
2006/08/10(木) 22:28:40ID:1zYaYqgP0
どうせdatファイル全部取得しちゃうんだから、無理して全部表示しなくても、
少しずつ表示すれば、ブラウザが重いってのは解消されるのでは?
2006/08/10(木) 22:30:26ID:01ARvEvT0
>>345 ネックというより,実際 dso でテストできる状態になる(read.html を
入れられる状態になる)のを待ってるところかな,と.

大きな問題として,Shift JIS のままの dat だと IE で 304 Not Modified が
返ってきた場合文字化けするって問題はあったんですが,mod_charset_lite で
on the fly に UTF-8 に変換することでそれは解決できるかな,と.

あと,Opera とか Mac とか,その辺の自分では直接動作確認できないブラウザで
いくつか不具合報告はあったようですが,そのあたりは Cache-Control 等の
ヘッダ設定で回避できるかどうか,ってのを確認したいところですが,
それも dso 待ちってところで......
2006/08/10(木) 22:30:36ID:3CvYv5sh0
ネックまっしぐら
2006/08/10(木) 22:57:13ID:3YV3xQVh0
偉大な管理人からのありがたい指令に基づき、
今日はPCを開かずに休もうと思うのです。はい。
2006/08/10(木) 22:59:24ID:fnCySRil0
>>352
ちょwwwwVIP何とかしてww
2006/08/10(木) 23:02:55ID:Mhv/c0uw0?BRZ(3010)
流れに任せるのがVIPの流儀。
2006/08/10(木) 23:26:42ID:01ARvEvT0
1GB 超達成w 立ち上げ直すか......

   PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP
 20637 nanashi  1001M  395M sleep   49    0   4:03:15  20% firefox-bin/5
356ひろゆき@どうやら管理人 ★
垢版 |
2006/08/11(金) 00:27:45ID:???0?DIA(30601)
dso でテストできる状態って具体的には、
何が必要なんでしょう?
2006/08/11(金) 00:38:05ID:09d0rie70
>>356
そんな事より、今のじっぷらを何とかしてくれ
2006/08/11(金) 00:39:59ID:6FT3eXGi0
テストする人はテスト環境いじれるのかしら
2006/08/11(金) 01:12:25ID:hsK705Zz0
>>356
1. むむむさんかひ(ryさんが read.html(やそれに付随する *.js)を
  dso に入れる.さらに,httpd に mod_charset_lite を組み込む(要パッチ).

2. >>301-307 を進めて頂ければ私が(ry
360ひろゆき@どうやら管理人 ★
垢版 |
2006/08/11(金) 01:33:44ID:???0?DIA(30601)
dsoのサーバ名ってどこなんでしょう?
2006/08/11(金) 01:35:41ID:UgVinwtM0?2BP(203)
本名:tiger506.maido3.com
芸名:dso.2ch.net
IP アドレス:206.223.152.30
2006/08/11(金) 01:38:50ID:oHMKgdD/0
ひろたん触る気満々
2006/08/11(金) 01:40:46ID:UfJbGpKWO
やっちゃえやっちゃえ。
2006/08/11(金) 01:41:22ID:hsK705Zz0
>>360 サーバは >>361 の通りで,そこにある板は

http://dso.2ch.net/myanmar/
http://dso.2ch.net/yangon/
2006/08/11(金) 01:42:14ID:d4EbaAtU0
使いにくいからデフォになるのは嫌だなあ
2006/08/11(金) 01:42:31ID:ZMdcub8m0
  ∧_∧  +
 (0゜・∀・)   ワクワクテカテカ
 (0゜∪ ∪ +
 と__)__) +
2006/08/11(金) 01:43:10ID:i0hRVKy/P
おれのミャンマー、ヤンゴンがひろあきに蹂躙されるうううう
2006/08/11(金) 01:44:41ID:T/dpvnTe0
それが目的だったのかー>>352
369ひろゆき@どうやら管理人 ★
垢版 |
2006/08/11(金) 01:58:23ID:???0?DIA(30601)
メールしましたー。
2006/08/11(金) 02:08:18ID:hsK705Zz0
>>369 受け取りました.ではぼちぼちと......
2006/08/11(金) 02:43:27ID:hsK705Zz0
http://dso.2ch.net/test/read.html
を置きますたが,一般ユーザ権限で不能なことがあるので,現状ではまだ使えません......

>>114 の点については APU_HAVE_ICONV が 1 なので Ok.
で,mod_charset_lite.so はあるものの httpd.conf で組み込まれてない
(さらに,どちらにしろ >>111 のパッチが当たってないと思うのでこのままでは使えない),
さらに >>208 のような設定も httpd.conf に必要,ってことで......

# ただ,直接 read.cgi に read.html を割り当てるのでなく,
# User-Agent を見て振り分けるなら >>208 も修正が必要ですね.
372root▲ ★
垢版 |
2006/08/11(金) 11:12:03ID:???0?PLT(15631)
まずは、

( ̄ー ̄)ニヤリッ
で、いいのかな。よくわかりません><.

そんなわけで、権限が必要な作業は、
本日以降たんたんと、ということで。
2006/08/11(金) 12:22:20ID:pEPVd2RI0?BRZ(7000)
たんたんめーん
2006/08/11(金) 14:44:52ID:hsK705Zz0
>>111 のパッチを改めて更新しますた.で,httpd.conf に入れる設定はこんな感じか.
----------------------------------------------------------------------
LoadModule charset_lite_module libexec/apache2/mod_charset_lite.so

<Location /*/dat-utf8/*.dat>
    SetOutputFilter XLATEOUT
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
    CharsetOptions NoImplicitAdd IgnoreIlSeq
    AddDefaultCharset UTF-8
    Header append Cache-Control max-age=5
</Location>
<Location /test/bbs-utf8.cgi>
    SetInputFilter XLATEIN
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
    CharsetOptions NoImplicitAdd IgnoreIlSeq
</Location>

<VirtualHost ...>
    # ServerName dso.2ch.net のところ
    AliasMatch ^/(\w+)/dat-utf8/(\d+\.dat)$ /home/ch2dso/public_html/$1/dat/$2
    Alias /test/bbs-utf8.cgi /home/ch2dso/public_html/test/bbs.cgi
</VirtualHost>
----------------------------------------------------------------------
ブラウザ振り分けの RewriteCond / RewriteRule なんかは .htaccess でもよさそうということで.
375root▲ ★
垢版 |
2006/08/11(金) 15:00:19ID:???0?PLT(15631)
>>374
どもです。
時間とれ次第、やるです、やるです。
2006/08/11(金) 21:19:14ID:0PwNZvzG0?BRZ(3010)
>>373
韓国麺まーだー?ティンティン
377root▲ ★
垢版 |
2006/08/12(土) 01:11:49ID:???0
さてと。
378root▲ ★
垢版 |
2006/08/12(土) 01:21:25ID:???0?PLT(15631)
んで、入れようと思うのですが、、、。

dso は諸事情により、Apache 2.0 系を使いたいのです。
ということで >>111 のパッチを、Apache 2.0.59 用も出してもらえるとうれしいです。

あと、dso サーバでは、read.html を read.cgi として動かそうと思っているので、
その設定についても、>>374 に入れておいてもらえるとうれしいかなと。
379root▲ ★
垢版 |
2006/08/12(土) 01:24:32ID:???0?PLT(15631)
…って、mod_charset_lite って、Apache 2.0 系にはないのかしら。

うーむ。だとすると、ex11 あたりのほうがいい? < テスト環境
2006/08/12(土) 01:48:28ID:Vndb+gLq0
>>378
>ということで >>111 のパッチを、Apache 2.0.59 用も出してもらえるとうれしいです。

というか,基本的に 2.0 系と 2.2 系ではモジュールのソースは互換性があるんで,
単に 2.2.3 の mod_charset_lite.c を持ってくればいいのかと.
http://svn.apache.org/repos/asf/httpd/httpd/tags/2.2.3/modules/filters/mod_charset_lite.c
これにパッチ当てて,単純に apxs でビルドすれば Ok と思いますんで.

>dso サーバでは、read.html を read.cgi として動かそうと思っているので、

まぁ RewriteRule は httpd.conf でも .htaccess でもどっちでもいいかとは思うんですが

RewriteRule /?read\.cgi(?:/(.*))?$ /test/read.html#$1 [R,NE]

read.html は PATH_INFO 形式でも受け付けますが(さらにいうと QUERY_STRING 形式も可)
location.hash 形式推奨ってことで上記のルールでは external redirect にしてます.
もし,external redirect にせず PATH_INFO のままで扱うってことなら

RewriteRule /?read\.cgi(/?.*)$ /test/read.html$1
381root▲ ★
垢版 |
2006/08/12(土) 21:46:01ID:???0?PLT(15631)
>>380
> というか,基本的に 2.0 系と 2.2 系ではモジュールのソースは互換性があるんで,
> 単に 2.2.3 の mod_charset_lite.c を持ってくればいいのかと.
> http://svn.apache.org/repos/asf/httpd/httpd/tags/2.2.3/modules/filters/mod_charset_lite.c
> これにパッチ当てて,単純に apxs でビルドすれば Ok と思いますんで.

なるほどです。

> まぁ RewriteRule は httpd.conf でも .htaccess でもどっちでもいいかとは思うんですが
> (りゃ。

ふむふむ。
これでいけそうですね。

今日はこれから事情があるので、その後にでもじっくりと。
382動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 01:51:20ID:4xdXhh4p0
質問・雑談スレッドに書いたんですが運営の人が降臨しなさそうなのでこちらに書かせて頂きます
運営の人に教えて答えてもらいたいんですけど
2ちゃんねるのTOP→掲示板から入ると2ペインで片方が板一覧のまま残り
何回かスレを開いたり書き込むと消えるけど、プログラム的にはどのような仕組みになってるんですか?
2006/08/13(日) 01:58:27ID:qGERqmC9P
少なくともここで聞くことじゃないな。
2006/08/13(日) 01:59:15ID:VGAz9MxW0
色々なところで同じことを聞く行為は
マルチポストと呼ばれ忌み嫌われております
質雑に帰れ
385動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 02:02:29ID:4xdXhh4p0
>>383
聞くべきスレッドが見当たらなかったので
>>384
質雑に運営の人は来んだろ、ただ聞き流されるだけ
2006/08/13(日) 02:04:35ID:UnIad/5p0?DIA(41500)
正直JavaScriptで動かそうとしてる馬鹿は死ねばいいと思う

ってレスをどっかでしたんだがな…

誰か拾ってきてくれ
2006/08/13(日) 02:09:46ID:UnIad/5p0?DIA(41500)
>クライアントサイドスクリプトに処理を集約しようとしてる馬鹿は正直死ねばいいと思う。
>
>宣撫らのこととか考えてんのか?Safari、Opera、FireFoxのこと考えてるのか?
>
>自分でろくにJavaScriptの許可不許可を設定できない奴のこと考えてるのか?
>
>壷やらモリタポやらで膨大な、幅広いユーザーから金とっといて、考えてないってことはないよな?
>
>ん?

この前誰かOperaでろくに表示されないようにBe板作り変えたときのレスだ
互換性ぐらい考えろよな
388root▲ ★
垢版 |
2006/08/13(日) 02:46:35ID:???0?PLT(15631)
管理人の言葉は、

「長いものには巻かれましょう」

だったはず。

ソースは、どこだったかな。
いつだったかの、2ちゃんねる公式ガイドだったと思うです。
2006/08/13(日) 02:48:03ID:cJc+bl4/0
まぁ,実用段階では User-Agent による振り分けで,read.html に対応できないブラウザは
従来版の read.cgi に振るようになるかと.

あと,自分自身が Firefox ユーザなんで Firefox には対応するように作ってます.
Opera とかその辺は自分では直接動作確認できないものの,可能なら対応できるように
したいと思いますが,対応不能なら上記のような振り分けで従来版の read.cgi に振ることになるかと.
390root▲ ★
垢版 |
2006/08/13(日) 02:55:41ID:???0?PLT(15631)
さて、お待たせしましたが、いよいよ設定するです。

寝るまでに、dso で read.cgi という名前で dso で動かすことができて、
SunOS さんが開発をすすめられるようにしようかと。
391動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 02:56:09ID:4xdXhh4p0
>>388
>>382を答えて下さい
2006/08/13(日) 02:56:51ID:7N1MUWqT0
+   +
  ∧_∧  +
 (0゚・∀・)   ワクワクテカテカ
 (0゚∪ ∪ +        
 と__)__) +
393root▲ ★
垢版 |
2006/08/13(日) 02:57:24ID:???0?PLT(15631)
>>391
ん、ここの話題じゃないような。
394root▲ ★
垢版 |
2006/08/13(日) 02:57:45ID:???0?PLT(15631)
あ、しまた。

運営の人じゃないんだった。ごめんなさい。
2006/08/13(日) 02:59:11ID:UnIad/5p0
>>389
そうか。

俺は宣撫らだから別に困らないけど…開発するのならOpera落としてテストするべきだよと一言。
その辺がめんどくさいのなら最初から携わるなともう一言

不許可の場合も<noscriptで飛ばすとか何とかしてちゃんと対応汁


とりあえず頑張ってください
2006/08/13(日) 03:00:39ID:amX6z+gg0
文句が出てから対応するという2chメソッドでしょう
397動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 03:01:50ID:mm6e11yz0
運営のフリをするrootたんみっけ!
2006/08/13(日) 03:04:06ID:UnIad/5p0
>>391
ぐぐれかす

>>396
もともと整った組織じゃないから仕方なす
399root▲ ★
垢版 |
2006/08/13(日) 03:06:57ID:???0?PLT(15631)
mod_charset_lite + patch の組み込みはできた模様。

これから、httpd の設定へと。
400382
垢版 |
2006/08/13(日) 03:09:58ID:4xdXhh4p0
>>398
2ch仕様なんてググっても分かるはずがないだろ

運営じゃなくて誰でも良いから答えてくだしい
2006/08/13(日) 03:15:13ID:UnIad/5p0
>>400
プログラム関係ない













     )、._人_人__,.イ.、._人_人_人
   <´ 天狗じゃ、天狗の仕業じゃ! >
    ⌒ v'⌒ヽr -、_  ,r v'⌒ヽr ' ⌒
// // ///:: <   _,ノ`' 、ヽ、_ ノ  ;;;ヽ  //
///// /::::   (y○')`ヽ) ( ´(y○')    ;;|  /
// //,|:::     ( ( /    ヽ) )+     ;| /
/ // |:::     +  ) )|~ ̄ ̄~.|( (       ;;;|// ////
/// :|::       ( (||||! i: |||! !| |) )      ;;;|// ///
////|::::    +   U | |||| !! !!||| :U   ;;; ;;;| ///
////|:::::       | |!!||l ll|| !! !!| |    ;;;;;;| ////
// / ヽ:::::       | ! || | ||!!|    ;;;;;;/// //
// // ゝ:::::::: :   | `ー----−' |__////
402root▲ ★
垢版 |
2006/08/13(日) 03:16:59ID:???0?PLT(15631)
まずは、dso サーバだけ、
従来のは read-dso.cgi という名前で動くようにした。
2006/08/13(日) 03:28:54ID:PSePZQsv0
>>400
あっちのスレで答えといたぞ
2006/08/13(日) 03:34:12ID:cJc+bl4/0
乙です>むむむさん

とりあえず出るようになったようで.
http://dso.2ch.net/test/read.html#myanmar/1153850369/l50
405root▲ ★
垢版 |
2006/08/13(日) 03:34:44ID:???0?PLT(15631)
>>374 と、>>380 の最後の行の設定を入れ込んだ。
動いてる?

http://dso.2ch.net/test/read.cgi/myanmar/1151761920/
406root▲ ★
垢版 |
2006/08/13(日) 03:35:35ID:???0?PLT(15631)
>>404
動いたようですね。

しかし、これはすごいです。
今日は記念日かな。
407root▲ ★
垢版 |
2006/08/13(日) 03:37:46ID:???0?PLT(15631)
うぉー、書き込みもできるのか。
これはなかなか。
408root▲ ★
垢版 |
2006/08/13(日) 03:39:12ID:???0?PLT(15631)
でも、BE が DIA じゃないかも。< 私

http://dso.2ch.net/test/read.cgi#myanmar/1151761920/529
2006/08/13(日) 03:39:12ID:mm6e11yz0
あ、書き込めた・・・
2006/08/13(日) 03:41:27ID:cJc+bl4/0
dso の bbs.cgi は古くてランクとポイントの対応も他の鯖と同一ではないかも?
2006/08/13(日) 03:42:39ID:amX6z+gg0
すげえ
どうやってるのか分からないけど部分取得にも対応してるのか

で、バグ報告
クッキー確認のダイアログに同意してもその後書き込まれないで止まってしまいます
412root▲ ★
垢版 |
2006/08/13(日) 03:43:18ID:???0?PLT(15631)
>>410
なるほど。

とりあえず、最新の bbs.cgi に入れ替えてきます。
今のやつは、リネームして保存しておくです。
413root▲ ★
垢版 |
2006/08/13(日) 03:45:00ID:???0?PLT(15631)
>>412
done.
414root▲ ★
垢版 |
2006/08/13(日) 03:46:42ID:???0?PLT(15631)
>>411
bbs.cgi を更新したんで、
もう1回試していただけると。
415411
垢版 |
2006/08/13(日) 03:47:31ID:amX6z+gg0
>>412のおかげか、ちゃんと書き込めるようになりました。
416root▲ ★
垢版 |
2006/08/13(日) 03:50:26ID:???0?PLT(15631)
すごいっすね。クッキーというか前の結果もちゃんと残る?

でも、本文欄のは、いろんな意味で残さないほうがいいですね。
2006/08/13(日) 03:52:43ID:mm6e11yz0
これって実装近い?
2006/08/13(日) 03:54:52ID:cJc+bl4/0
>>416
>でも、本文欄のは、いろんな意味で残さないほうがいいですね。

投稿成功時に本文欄をクリアするようにしてみますた.
419root▲ ★
垢版 |
2006/08/13(日) 03:56:10ID:???0?PLT(15631)
>>418
おつです。早いすね。

あとは、さくさく進めていけそうな感じ?
2006/08/13(日) 03:56:41ID:UnIad/5p0
乙ですお

★☆スレッドストッパー試験所inみゃんまー6☆★
1 :高瀬川@師匠闇神様 ◆uEP6Z9AQTI :2006/07/01(土) 22:52:00 ID:???
     ・
     ・
     ・
●age!!こそが真の勇者
●ちゃんと寝ましょう。

前スレ ★☆スレッドストッパー試験所inみゃんまー6☆★
undefined
~~~~~~~~~~

ミスかな…
421root▲ ★
垢版 |
2006/08/13(日) 03:59:42ID:???0?PLT(15631)
スレ立てしてみた。

JavaScript版read.cgiの動作試験はここで
http://dso.2ch.net/test/read.cgi/myanmar/1155409133/
2006/08/13(日) 04:00:33ID:UnIad/5p0
http://dso.2ch.net/test/read-dso.cgi/myanmar/1151761920/
にて末尾に

Hello 2ch !!
ERROR NO=0

maxLA=16.000000
LA=0.571777
2006/08/13 03:59:02 日本時間が取れるようになりました。
/myanmar/1151761920/ PATH_INFO
(null) QUERY_STRING
/home/ch2dso/public_html/test/ cwd
/home/ch2dso home
dso.2ch.net server name

ita[myanmar]
key[1151761920]
res[]
dat[/home/ch2dso/public_html/myanmar/dat/1151761920.dat]
where[1]
size[66260]
time[2066833856] LastModifyed 今回は無しの方向で、

lineN[535]
subject[★☆スレッドストッパー試験所inみゃんまー6☆★]

st[1]
to[534]
ls[0]
nf[0]
xxx[]
2006/08/13(日) 04:00:47ID:cJc+bl4/0
>>419 ですかね.あとは不具合報告に対処しつつ,対応可能なブラウザとそうでないものの
振り分けを考えていくってかんじですかね.

>>420 ん〜と,ちなみにブラウザは何でしょうか......? 自分の Firefox では

>前スレ ★☆スレッドストッパー試験所inみゃんまー6☆★
>http://dso.2ch.net/test/read.cgi/myanmar/1149217221/

になってますが......
424root▲ ★
垢版 |
2006/08/13(日) 04:02:09ID:???0?PLT(15631)
>>422
これは、そういうもんですね。
デバッグ用出力ということで。
2006/08/13(日) 04:07:21ID:8RoQ/HNi0
でもって
<noscript></noscript>をヘッダにぶちこんで

metaでread-dso.cgiに飛ばす。metaで飛べない人のためにもちアンカー設置
426root▲ ★
垢版 |
2006/08/13(日) 04:09:27ID:???0?PLT(15631)
>>425
そのへんは、これからぼちぼちかな。

今日はそろそろ、新しい ThinkPad が呼んでいるみたい。
2006/08/13(日) 04:09:52ID:8RoQ/HNi0
>>423
おっとすまん!!Operaだった

>>424
把握
428root▲ ★
垢版 |
2006/08/13(日) 04:10:32ID:???0?PLT(15631)
read-dso.cgi というのはちとださいかな。
read.so にしておこう。
429root▲ ★
垢版 |
2006/08/13(日) 04:12:38ID:???0?PLT(15631)
>>428
done.

これで、JavaScript がだめぽな場合、read.so にフォールバックするかんじで。
2006/08/13(日) 04:14:47ID:8RoQ/HNi0
readso.cgi
の方が見慣れてるような気がしなくもないww


寝る
おっ おっ おっ   カッチン
           カッチン
. (^ω^ ≡^ω^)彡    ミ
.  (  ∪ ∪   \†/
  と_)_)     .△
2006/08/13(日) 04:14:52ID:cJc+bl4/0
>>427 なるほど...... Opera の String.replace() の挙動がどうなってるか,ってあたりかな......

>>425 いいアイデアかも知れませんが,静的な HTML ファイルでは
指定された板・スレッドキーは取得不能なので,直接 read.so に
ジャンプ可能にするのは困難かも...... 説明ページなどを別途作って
そちらにリンクするとか,そんな感じになるかも......
432root▲ ★
垢版 |
2006/08/13(日) 04:16:58ID:???0?PLT(15631)
>>431
> 説明ページなどを別途作って
> そちらにリンクするとか,そんな感じになるかも......

今は、それでいいんじゃないですかね。
JavaScript がない人は、1クリック増えちゃうけど。
2006/08/13(日) 04:31:07ID:ZPUk9xfD0
試したけどやっぱりhashはいまいちだなあ。
戻るがきかない。

あと、IEだとスレの保存ができない
Firefoxだとスレの保存はできるが
保存したスレを開くと
_onload(e);
でエラー(too much recursion)になる
(IEで開くとStack overflawとでる)

で、OKなブラウザでも普通のread.cgiへのリンクはあったほうがいいな
(scriptで生成する)
434root▲ ★
垢版 |
2006/08/13(日) 04:33:19ID:???0?PLT(15631)
で、>>77 あたりは、どうなんですかね。
JavaScript が、やはりいいんだろうか。

# そろそろ眠気来たかな。
2006/08/13(日) 04:36:36ID:amX6z+gg0
>>434
やる人がいないとどうにもならない罠
436382
垢版 |
2006/08/13(日) 04:40:58ID:4xdXhh4p0
rootタン教えてくだしい
2006/08/13(日) 04:48:19ID:7RtoKTG00
試してみたけどAjaxの書き込みは凄い快適だな
専ブラ使ってるみたい。
2006/08/13(日) 04:53:05ID:cJc+bl4/0
>>433
>試したけどやっぱりhashはいまいちだなあ。
>戻るがきかない。

まぁ,上の方でも話してましたが,(JavaScript に限らず Java や Flash などでも)
このようにクライアント側で HTML 整形することになると,外側の html と
中身の dat の双方の HTTP リクエストが発生し鯖へのアクセス数は増加することになって
負荷軽減という面で見れば微妙になってしまうと.ここで,PATH_INFO 形式などでは
板・スレなどの指定が変わった際に外側の html のキャッシュが効かない,
それに対し location.hash ならキャッシュを有効活用できる,ってことなんで......

あと,これでスレの保存をした場合はどちらにしろ外側の html しか保存されず
中身の dat は保存されないので,保存に不向きなのは確かですね.read.so への
リンクを入れるとして,どのあたりに入れるのがいいですかね......
2006/08/13(日) 05:56:02ID:ZPUk9xfD0
>>438
|あと,これでスレの保存をした場合はどちらにしろ外側の html しか保存されず
|中身の dat は保存されないので,,保存に不向きなのは確かですね.
Firefoxだと書いた状態で保存されたので一応表示はできた
(だからスレの保存はできると書いた)んだけど、自分で確認してみた?
2006/08/13(日) 06:18:26ID:cJc+bl4/0
チェックのため Opera もダウソしてみた.このプラットフォームにも対応してるのは偉い.
http://jp.opera.com/download/index.dml?opsys=Solaris%20Intel&;lng=en&ver=9.01&platform=Solaris%20Intel&local=y


>>439 あぁ,「完全」の形で保存するとそうなるのね.しかし,そうなるとなおさら
保存に不向きですね.JavaScript 側で想定してない HTML の構造になっちゃうんで.
強いて言えば,「完全」の形で保存したのなら JavaScript オフにしてから表示すればいいのかも.
2006/08/13(日) 06:29:34ID:7RtoKTG00
保存っていうリンクを右クリッコ→対象をファイルに保存

じゃないけど、そういう案も考えてみた方がいいかも。
2006/08/13(日) 09:36:26ID:Qz5OOFi7P
結局read.soは何の処理をしていますか?
2006/08/13(日) 09:52:23ID:cJc+bl4/0
>>442 従来のサーバ側で HTML 化する read.cgi と同じものですね.
2006/08/13(日) 09:54:07ID:y6E3b59T0
これは良い夏休みの自由研究ですね。
2006/08/13(日) 12:43:26ID:Jti5qTkv0?2BP(120)
http://dso.2ch.net/test/read.html#myanmar/1153850369/l50
一部文字化けしてるんですが僕だけでしょうか
446root▲ ★
垢版 |
2006/08/13(日) 12:53:17ID:???0?PLT(15641)
>>438
> ここで,PATH_INFO 形式などでは
> 板・スレなどの指定が変わった際に外側の html のキャッシュが効かない,
> それに対し location.hash ならキャッシュを有効活用できる,ってことなんで......

>>380 にあるやつを、

RewriteRule /?read\.cgi(?:/(.*))?$ /test/read.html#$1 [R,NE]
(上のやつ)

にしてみた。
447root▲ ★
垢版 |
2006/08/13(日) 12:56:13ID:???0?PLT(15641)
で、やっぱり画面上で read.html になるのも、微妙にあれですね。

画面上は read.cgi で表示してほしい(ファイルは read.cgi という名前で置く)
とすると、どうすればいいのかしら。

確か、前にもこの質問したと思うけど、改めて。
2006/08/13(日) 13:54:29ID:OefIEdBp0
鯖サイドとクライアントに上手に処理を分散させることはできないの?

そうすると何かとあとあと便利かなと思ってるんだけど…めんどくさい?
449ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 14:27:07ID:???0?DIA(30602)
>>443
したら、同じ名前でいいんでないすか?
2006/08/13(日) 14:30:31ID:Gy0/AMhIP
なんとなく紛らわしい
パンツもふんどしも同じ股間を隠すものだけどふんどしをパンツとは呼ばない
451ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 14:42:05ID:???0?DIA(30602)
中身も同じものなんでしょ?
2006/08/13(日) 14:44:41ID:OefIEdBp0
>>451
read.cgiでみんな慣れてる→ログとかも参照しやすい?分かりやすい?
 ↓
 ↓
JavaScript使用不可<使用可能

なのかな?
2006/08/13(日) 14:54:06ID:OefIEdBp0
ようするに今まで慣れてるものにより一般的なものを対応させておいた方が何かと不具合起きにくいってことを言いたかった。
分かりにくくてすまn
2006/08/13(日) 15:15:33ID:cn3fyogX0
>>http://dso.2ch.net/test/read.cgi/myanmar/1155409133/37
Opera 完璧です。
Firefox beフィルタ(画面右上)が表示されず
IE ランタイムエラー 120行目 文字の繰り返しを表す正規表現演算子が不正です。
2006/08/13(日) 16:08:29ID:cJc+bl4/0
>>447
<Files read.cgi>
    AcceptPathInfo On
    ForceType text/html
    SetHandler default-handler
</Files>

>>449 read.cgi という同じ名前でアクセスしても,対応ブラウザなら read.html,
非対応ブラウザなら read.so,にそれぞれ振り分けるって形になると思います.
ただ,User-Agent の判定はできても JavaScript の on / off の判定は
サーバ側ではできないので,対応ブラウザでも JavaScript off の場合の
“逃げ道”として read.so という名前で参照できるようにする意味はあるかと.

>>454 Firefox, IE のバージョンはいくつでしょうか?
Firefox 1.5.0.x, IE 6 なら動くんですが......
2006/08/13(日) 16:30:32ID:cJc+bl4/0
>>445 http://dso.2ch.net/test/read.cgi#myanmar/1155409133/54n ということで......
2006/08/13(日) 16:47:51ID:amX6z+gg0
>>456
いえ、サーバ側の変換がおかしいです。
CP932なら〜はU+FF5Eに変換されなければならないのに
U+301Cに変換されています。
http://dso.2ch.net/myanmar/dat/1153850369.dat
http://dso.2ch.net/myanmar/dat-utf8/1153850369.dat
2006/08/13(日) 17:03:41ID:cJc+bl4/0
>>457 あ〜,何かこれは FreeBSD で使ってる GNU iconv のバグっぽいのかな?

% perl -e'print "\x81\x60";' | iconv -f sjis -t utf-8 | iconv -f utf-8 -t ucs-2be | od -txC
0000000 30 1c
0000002
% perl -e'print "\x81\x60";' | iconv -f cp932 -t utf-8 | iconv -f utf-8 -t ucs-2be | od -txC
0000000 30 1c
0000002
% iconv --version
iconv (GNU libiconv 1.9)
Copyright (C) 2000-2002 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.
Written by Bruno Haible.

Solaris の iconv だと正常のようですが.

% perl -e'print "\x81\x60";' | iconv -fsjis -tutf-8 | iconv -futf-8 -tucs-2be | od -txC
0000000 30 1c
0000002
% perl -e'print "\x81\x60";' | iconv -fcp932 -tutf-8 | iconv -futf-8 -tucs-2be | od -txC
0000000 ff 5e
0000002
459 [´・ω・`] ZT037011.ppp.dion.ne.jp(59.128.37.11)
垢版 |
2006/08/13(日) 17:05:54ID:cn3fyogX0
>>455
>バージョンはいくつでしょうか?

Firefoxは、 Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.7.5) Gecko/20041108 Firefox/1.0
IEは、5.0
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
2006/08/13(日) 17:28:52ID:cJc+bl4/0
>>459 どもです.Firefox は 1.0 ですか...... ひょっとすると
script エレメントを動的に作成しても実行してくれなかったりするのかな......?
タイミング的には read.html 中の JavaScript でスレ内容を書き出してからでないと
be.js の onload() を実行しても意味ないんで静的に読み込ませるってのもアレですし
(さらに,be.js は read.html だけでなく従来型の read.cgi や index.html にも
適用可能に作ってあるので,それとの兼ね合いもありますし)......
まぁ,be.js が担ってるのは主に旧 BE 板にあった機能なんで,それがなくても
致命的でないということなら,そのままでご了承頂くというのも一つの道かも......


あと,IE は 5 ですか...... IE 5 で対応してない正規表現はどれなんだろう......
2006/08/13(日) 17:38:53ID:cJc+bl4/0
>IE 5 で対応してない正規表現はどれなんだろう......

ひょっとして (?: ) かなぁ......? ロケーションバーから

javascript:try { alert(/(\w)(?:\w)(\w)/.exec("abc")); } catch(e) { alert(e.message); }

と入力するとどんな具合でしょうか?<IE 5
2006/08/13(日) 17:43:58ID:MroJNm59O
携帯のフルブラウザから書くとどうなるんだろと思ったがPCSV焼かれてるんだっけ
463 [´・ω・`] ZT042219.ppp.dion.ne.jp(59.128.42.219)
垢版 |
2006/08/13(日) 18:36:19ID:GWvkDp280
>>461
残念ながら変わらず。

参考になるか分かりませんが、
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/script56/html/js56jserrunexpectedquantifier.asp
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
464 [´・ω・`] ZT042219.ppp.dion.ne.jp(59.128.42.219)
垢版 |
2006/08/13(日) 19:16:04ID:GWvkDp280
>>461
結果の画面をキャプチャーしますた。

http://up.80.kg/test/read.cgi/banana100m/1153303306/43
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
2006/08/13(日) 19:21:56ID:7rQqIGsh0
今の段階でIE5やfirefox1.0に対応する意味は皆無じゃないんでしょうか
という素朴な感想
2006/08/13(日) 19:24:23ID:q4y0FDfX0?BRZ(1000)
5.5が配布されていないからねぇ
98の人は5のままって人も多いかもね
5ならOfficeに入っていたりするし
2006/08/13(日) 19:32:41ID:QDuKH/z20
古いブラウザの方はc-otherでも使っていて下さい。
2006/08/13(日) 19:40:15ID:OefIEdBp0
>>461
\wが駄目みたい。。。[0-9A-Za-z_]に置き換えするべし
2006/08/13(日) 20:47:32ID:cJc+bl4/0
>>463-464 ありがとうございます......ただ,こちらが期待していたのは
>>461 の JavaScript を実行した際に出てくるダイアログの表示を知りたかった,
ということなんですが......やはり「正規表現演算子が不正です」だったのかな?

あと,そのサイトにある「正規表現の構文」
http://msdn.microsoft.com/library/ja/script56/html/js56jsgrpregexpsyntax.asp
では \w も (?: ) も使えることになってるはずですが......やはりバージョンの問題かな.


>>465-468 まぁ,\w も (?: ) も ECMA-262
http://www.ecma-international.org/publications/standards/Ecma-262.htm
に規定されてるものなんで,これに対応してないブラウザは read.html 非対応扱いで
read.so に振り分けってことにしてもいいかな,という気もしてます.
sunos.saita.ma へのアクセスで IE のバージョンの内訳を見ると↓な感じですし,
特に強い異論がなければ......

7.0   1.4%
6.0  95.6%
5.5   1.2%
5.01  0.4%
5.0   0.6%
2006/08/13(日) 20:49:33ID:A9Zb/iiX0
5.5から書いてます。
ダメならダメで振り分けてくれればいいかなという感じで。
2006/08/13(日) 20:59:20ID:GWvkDp280
>>464
ごめんなさいレス番間違えますた。

http://up.80.kg/test/read.cgi/banana100m/1153303306/44


>>468
IE5.5ならよさげですが、IE5.0はダメみたいです。
2006/08/13(日) 21:08:17ID:cJc+bl4/0
>>470-471 なるほど,ありがとうございます.

>>421 のスレでは IE 5.5 SP2 でダメという報告もあるようですが......
対応はエラーの内容次第かな......
473root▲ ★
垢版 |
2006/08/13(日) 21:10:21ID:???0?PLT(15642)
>>449
なるほど、

read.cgi はそのままに、subback.html とかそのへんで read.html を出すとか、
そういうのはどうか、ってことですか。

このへんは、考え方次第ですかね。
474root▲ ★
垢版 |
2006/08/13(日) 21:10:47ID:???0?PLT(15642)
>>458
およよ、iconv のバージョンアップが必要とか。
2006/08/13(日) 21:17:31ID:cJc+bl4/0
>>474 GNU iconv は常用してないので詳しくないですが,BE の dat を
iconv にかけてた時にどこかのスレでどなたかがパッチを提示してませんでしたっけ?
バージョンアップだけで済むのか,それともさらにパッチが必要なのか,詳しくないので......
2006/08/13(日) 21:20:59ID:GWvkDp280
>>472
もちろん、まゃんまーではIE5.5はダメで、>461を>468へ置き換えると、「abc,a,c」のダイアログが表示されるということです。
Monazilla/1.00 (JaneStyle/2.41)
477root▲ ★
垢版 |
2006/08/13(日) 21:29:03ID:???0?PLT(15642)
ってことは、

・bbs.cgi では、read.html#なんちゃら を生成する
・read.cgi は従来どおり動かす

あたりが、いい感じなのかな。

ぼちぼち、やってみますかね。
2006/08/13(日) 21:31:17ID:cJc+bl4/0
GNU iconv の最新版が 1.9.2 で,
http://www.gnu.org/software/libiconv/
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.9.2.tar.gz
それに対する CP932 パッチがあるようですね.
http://www2d.biglobe.ne.jp/~msyk/software/libiconv-1.9.2-cp932-patch.html


>>476 なるほど......となると,5.5 も read.so に振り分けの方向かな......
479root▲ ★
垢版 |
2006/08/13(日) 21:32:27ID:???0?PLT(15642)
WITH_EXTRA_PATCHES=yes で ports から libiconv を作ると、
>>478 のは、入るみたい。
480root▲ ★
垢版 |
2006/08/13(日) 21:35:05ID:???0?PLT(15642)
てなわけで >>478 ありの iconv に入れ替えるのは、今日寝るまでにやるです。
bbs.cgi は、気が向いたら取り組むぐらいで。
481 [´・ω・`] ZT042219.ppp.dion.ne.jp(59.128.42.219)
垢版 |
2006/08/13(日) 21:47:04ID:GWvkDp280
最終的にはブラウザで表示されるアドレスが、
http://qb5.2ch.net/test/read.cgi/operate/1153819270/
って表示されるのがベストだと思いますので、
http://qb5.2ch.net/test/read.html#operate/1153819270/
とか、
http://qb5.2ch.net/test/read.so/operate/1153819270/
とかになるのだけはかんべんして欲しいです。

技術的に可能でしょうか?
Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
482root▲ ★
垢版 |
2006/08/13(日) 22:10:27ID:???0?PLT(15642)
>>481
テクニカルには可能です。

あとは「どうするか」ですね。

個人的には、ブラウザに表示されるアドレスは、
変わってもいいかもとか思っていたり。

だって昔は、PATH_INFO 形式じゃなかったわけで。
従来のものとの互換性がとれるなら、いいんじゃないのかなと。
2006/08/13(日) 22:18:23ID:cJc+bl4/0
>>481 あえて / ではなく # を使うということには相応の理由があるんで (>>438)......
まぁ,もし仮にサーバ負荷のことなどを考慮しなくてもいいという前提なら / のままでもいいんですが.

あと,JavaScript 版については /test/read.html#...... という URL がデフォルトに
なる方向なのかも知れませんが,従来通りの /test/read.cgi/...... という URL でも
アクセス可能な状態は保たれるようにするということで.
2006/08/13(日) 22:40:54ID:cJc+bl4/0
ただ,subback.html に埋め込む URL を /test/read.html#...... にした場合の問題点は,
非対応ブラウザからのアクセスをリダイレクトで read.cgi に飛ばすのに困る,ってことですね.
サーバには URL の # 以降の部分は渡されないので,PATH_INFO 形式の read.cgi 用 URL を
生成できないってことになるんで...... 逆に,PATH_INFO 形式でアクセスしてきたのを
location.hash 形式の URL にリダイレクトさせるのは可能ですが.

あるいは,subback.html を JavaScript 対応版と非対応版の二種類作って
subback.html の段階で振り分けるとか......とはいえ,これも大変か......
485root▲ ★
垢版 |
2006/08/13(日) 22:43:17ID:???0?PLT(15642)
WITH_EXTRA_PATCHES=yes で libiconv を作り直し、
libiconv に依存している ports を作り直しました。

mod_charset_lite のパッチ版も、作り直しました。
486root▲ ★
垢版 |
2006/08/13(日) 22:48:49ID:???0?PLT(15647)
>>445 は、なおたのかしら。
487root▲ ★
垢版 |
2006/08/13(日) 22:53:27ID:???0?PLT(15647)
で、bbs.cgi ごにょごにょして、
read.cgi を従来バージョンにするのは、
ちと、明日以降にじっくりとというかんじで。
2006/08/13(日) 22:59:18ID:cJc+bl4/0
>>485 乙です.iconv は正常になったようですね.

% perl -e'print "\x81\x60";' | iconv -f sjis -t utf-8 | iconv -f utf-8 -t ucs-2be | od -txC
0000000 30 1c
0000002
% perl -e'print "\x81\x60";' | iconv -f cp932 -t utf-8 | iconv -f utf-8 -t ucs-2be | od -txC
0000000 ff 5e
0000002
% iconv --version
iconv (GNU libiconv 1.9)
Copyright (C) 2000-2002 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.
Written by Bruno Haible.


>>486
>なおた

ようです.
2006/08/13(日) 23:38:36ID:k/t/ll9b0
#でリンクする場合、IEでは未読リンクと既読リンクの区別がつかなくなるような
490ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 23:49:21ID:???0?DIA(30602)
文字コード変換のライブラリってjsではないんですかねぇ。。
491ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 23:51:26ID:???0?DIA(30602)
http://jsgt.org/ajax/ref/charset_test/responsetext/seu8/sample.htm
http://jsgt.org/ajax/ref/charset_test/responsetext/seu8xml/sample.htm

わりとそのままでもいけるんすね。。。
2006/08/14(月) 00:03:31ID:Npu56CF/P
ひろゆきがJS書いてあげてよ!
493ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 00:18:48ID:???0?DIA(30602)
ら、、来年には。。
2006/08/14(月) 00:23:51ID:clLu5sZ/0
文字コード問題なら>>125の方法もあるよ。javascript側でも出来るけど
実用に耐えられないんじゃ
495root▲ ★
垢版 |
2006/08/14(月) 00:27:12ID:???0?PLT(15647)
>>490
文字コードもクライアントで変換させたいと。
496stream ◆PNstream2s
垢版 |
2006/08/14(月) 00:43:14ID:6OcOUbMJO
JavaScriptには生のバイト列をサーバーから受信する方法はなさそうですから、変換も何もないかと思われる。
2006/08/14(月) 00:44:01ID:clLu5sZ/0
もらえるよ。大丈夫。
2006/08/14(月) 00:48:04ID:LiQ4r6Ez0
>>488
直りますた。お疲れ様です。
2006/08/14(月) 00:49:57ID:LiQ4r6Ez0
少なくとも、文字化けしないと分かってるブラウザは /dat-utf8 じゃなくて /dat を
使うようにできませんか。
2006/08/14(月) 00:58:56ID:73LnuNTQP?PLT(28001)
bbs.cgiもJavaScript化しないかな
2006/08/14(月) 01:02:48ID:Npu56CF/P
言い出しっぺの法則で
2006/08/14(月) 01:05:56ID:jHyLb3rV0
>>495
無理
2006/08/14(月) 01:11:11ID:LiQ4r6Ez0
確か /dat を直接使えば変換の必要はないけどそれだとキャッシュから読み取ったとき
IE6 が文字化けするんだっけ? で>>499と。
504445
垢版 |
2006/08/14(月) 01:14:17ID:SWdP+SnS0?2BP(120)
>>486
治りました
505ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 01:45:14ID:???0?DIA(30602)
文字コードの変換コストが高い気がするのです。

>>503に同意なのですが、IE6以外は大丈夫なんですか?
506root▲ ★
垢版 |
2006/08/14(月) 01:50:50ID:???0?PLT(15647)
>>505
文字コードの変換コストは、圧縮処理(mod_deflate)よりも断然低いですね。

文字コードの変換にこだわるなら、
圧縮を段階的にやめることを検討したほうがよさげかもです。
昔とは事情が違うわけですし。
507root▲ ★
垢版 |
2006/08/14(月) 01:58:17ID:???0?PLT(15647)
で、圧縮は、ようは CPU 負荷というコストを使って、
転送量をセーブすることにより、何か得られるものがあるから
(例えばお金の節約とか)、やっていると思うわけです。

で、もし仮にですが、圧縮で得られるものが圧縮で使うコストよりも少ないのであれば、
それは「労多くして益少なし」ということなんではないのかなと。

PIE に移ってからは、定価のタリフのうえでは「帯域については完全保証(料金は変わらない)」と
言っているので、そのあたりのコスト感覚というか計算についても、いろいろと検討してみる必要が
あるのかもしれないのかなと。

# ただ、今の standard banana でいきなり圧縮やめると、
# 10Mbps を超えてしまうやつが、ぼろぼろ出てくるかもしれないですが。
2006/08/14(月) 01:59:56ID:LiQ4r6Ez0
>>505
>>116http://pc8.2ch.net/test/read.cgi/php/1147750917/334
によると、Firefoxでは問題ないようです。
実験したいのですが、>>118がつながりません。
どこかに文字化けするサンプルは残っていますか?
2006/08/14(月) 03:00:44ID:5Nwx/hDw0
>>489
Firefoxだと別管理だったけど
IEだと確かに全部既読になった
2006/08/14(月) 07:15:07ID:WxMZYEQv0
IE(6 には文字化け問題があるとして,7 はどうなんでしょ?)だけ dat-utf8 使って
それ以外 dat ってのをやるならそれでもいいんですが,その場合
----------------------------------------------------------------------
<Location /*/dat/*.dat>
    AddDefaultCharset Shift_JIS
    Header append Cache-Control max-age=5
</Location>
----------------------------------------------------------------------
ってのを httpd.conf に入れてもらうということで.ただ,これを入れた場合
黒山羊の Squid などに影響が出ないかどうかってのは要観察かも知れません.あるいは,
----------------------------------------------------------------------
<Location /*/datx/*.dat>
    AddDefaultCharset Shift_JIS
    Header append Cache-Control max-age=5
</Location>

<VirtualHost ...>
    # ServerName dso.2ch.net のところ
    AliasMatch ^/(\w+)/datx/(\d+\.dat)$ /home/ch2dso/public_html/$1/dat/$2
</VirtualHost>
----------------------------------------------------------------------
のようにして datx を使うことにすれば,黒山羊等の心配は無用ですが.
2006/08/14(月) 08:38:05ID:pfMHSnaj0
IEでも全datを取得するような場合は生SJISを読むことはできる。 >>86
ただし差分の取得などには使えなさそう。
512ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 14:22:32ID:???0?DIA(30602)
圧縮ははずす方向だった予感。

>>511
差分読み込みをするために文字コード変換して一部を渡すのと、
文字コード変換せずに全部のdatを渡しちゃうのは
どっちが重いんでしょう?
2006/08/14(月) 14:25:11ID:oLLYslxgP
ぜんぶ
2006/08/14(月) 14:28:59ID:LiQ4r6Ez0
文字コード変換しても差分読み込みはできません。
現状では(Not Modifiedが返らない限り)無条件にdatは全部読んでます。
そうしないと部分表示に対応できないから。
515root▲ ★
垢版 |
2006/08/14(月) 14:33:19ID:???0?PLT(15697)
>>512
> 圧縮ははずす方向だった予感。

おぉ。そうすか。
vip とかの単体系サーバにとっては、かなり朗報かも。

>>512 第二段落

全部の方が、特にでっかい dat の時はコスト高そうな気がしますね。
でもたぶん、測ってみる必要がありそう。

>>514
そうでしたっけか。< 差分ができない
そのこころって、なんでしたっけ。
2006/08/14(月) 14:36:08ID:LiQ4r6Ez0
>>515
あ、書き込みの後とかリロードボタンを押した場合には
差分取得してるかも。
2006/08/14(月) 14:36:47ID:LiQ4r6Ez0
> リロードボタン
じゃなくてリロードリンク
518ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 14:42:53ID:???0?DIA(30602)
差分は仕様がよくわからないと。。
519stream ◆PNstream2s
垢版 |
2006/08/14(月) 14:42:55ID:6OcOUbMJO
なんか勘違いしてる見たいですけど、差分転送なんて有り得ないですよ。IE6が文字化けするのは、If-Modified-SinceとかIf-None-Matchを使った「条件付きGET」の結果、304が帰ってきた場合です。
520ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 14:44:03ID:???0?DIA(30602)
>差分転送なんて有り得ないですよ
つまり差分転送はjsだと出来ないってことですか?

>「条件付きGET」の結果、304
ってのは、具体的に何をしたときに発生するどういうエラーなんでしょう?
521root▲ ★
垢版 |
2006/08/14(月) 14:45:40ID:???0?PLT(15697)
条件付きGETの結果、304 が返ってくる = dat が更新されていなかった

かな。
つまり、書き込みも削除もされていなかったと。
2006/08/14(月) 14:46:36ID:clLu5sZ/0
差分転送は、2chブラウザと同じ方法で出来るでしょ。
現状の仕様が差分転送してないだけで、
2006/08/14(月) 14:57:05ID:LiQ4r6Ez0
>>519
そういえば304の応答に「Content-Type: text/plain; charset=Shift_JIS」を含めても
文字化けするの?
>>522
ただしログはとっておけないからその場で(ページを移動せずに)リロードした場合に
限る。だから>>516と。
もっとも現状では差分取得は一切やってないみたいだけど
2006/08/14(月) 14:58:53ID:clLu5sZ/0
>>523
うんうん
xmlhttpのresponseBodyで、バイナリデータ貰えるし、
Rangeヘッダ追加してやりゃ差分取得もできる。

responseBodyがIE限定だし
ブラウザから更新されたら意味ないから無駄に近いけど
525ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 15:02:27ID:???0?DIA(30602)
つまり差分取得は可能だけど、今のバージョンは未対応。。と

差分転送で更新されてないと304が返るけど、
jsだとハンドリングできないってことですか?
2006/08/14(月) 15:05:17ID:Zt0xoj6H0
>>525
これの処理お願いします。
http://news20.2ch.net/test/read.cgi/news/1155531670/3
527stream ◆PNstream2s
垢版 |
2006/08/14(月) 15:06:22ID:6OcOUbMJO
>>520
JavaScriptじゃできないですね。差分取得使うなら通常ブラウザのキャッシュではなく独自のキャッシュ機構が必要ですから、パソコンのディスクなどにアクセスできる方法じゃないと。


>>522
JavaScriptでもRangeヘッダをつければ差分取得自体はできるけど、そのRangeに設定する数値はどうやって決めるのか。
仮に決められても、そもそもブラウザを終了したり他のページに移ったら(=JavaScriptが終了したら)キャッシュに残ってるデータのうしろに差分取得したデータをくっつける手段はないから、プログラムを複雑にしてまでやるメリットは薄いと思う。

何が方法があるならコード例を示して欲しい。responseBodyはすでに過去のもののはず。
2006/08/14(月) 15:11:59ID:clLu5sZ/0
>>525
jsのHTTPクライアントのXMLHTTPさんが過保護で
普通に取得しても、キャッシュに残ってる+更新されてないと
そのキャッシュを読み込んで返す。
ヘタしたら304さえ返さない。てか304返すなら拾えるし。

キャッシュ読み込むときに文字コードの判定にしくって
文字化けが起きてるらしい。
529ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 15:12:39ID:???0?DIA(30602)
>>527
そすっと、差分取得はないものとして作れば、
304エラーの問題もなくなると。

dat丸ごとの転送で作ってみて、
既存のread.cgiでの処理との比較をしてみるとか。
530ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 15:13:27ID:???0?DIA(30602)
>>528

キャッシュを読むときに文字コード指定したりして、
回避することは出来ないんすかね。
2006/08/14(月) 15:14:17ID:YmRpFYCG0
>>527
リーロードボタンみたいなのを別に設置したらできそうだね
532stream ◆PNstream2s
垢版 |
2006/08/14(月) 15:17:31ID:6OcOUbMJO
>>523
そもそも304の応答にはボディはないからContent-Typeはつけちゃいけないし、mod_header使ってもつけられない。


>>528
>過保護
いやそれごく普通の動作だし、いやならIf-Modified-Sinceに昔の時刻を設定するのが筋でしょ。
533root▲ ★
垢版 |
2006/08/14(月) 15:18:27ID:???0?PLT(15697)
>>532
> そもそも304の応答にはボディはないからContent-Typeはつけちゃいけないし、
> mod_header使ってもつけられない。

おぉ、なるほど。
で、IE6 だとその場合、UTF-8 だと思い込んじゃう、ってことなのかしら。
2006/08/14(月) 15:21:27ID:clLu5sZ/0
>>527
>プログラムを複雑にしてまでやるメリットは薄い
いやまんまこのとおりだからほぼ無意味。

>>530
XMLHTTPの文字コード判定は
サーバーからの指定と
XML文章だったばあいencodingの部分。
あとHTMLの指定ぐらいかな。

それ以外は、自力解釈。わかんない場合UTF-8で読む。
他に設定できない気がした。
535stream ◆PNstream2s
垢版 |
2006/08/14(月) 15:52:57ID:6OcOUbMJO
>>529
まあ、SunOsさんはそれよりも文字コード変換してしまったほうがすっきりするということで実装を進めたようですが
2006/08/14(月) 16:04:45ID:WxMZYEQv0
差分取得は>>527ということでやってません.で,304 エラー(というか,別に
Not Modified はエラーではないんですが)は差分取得とは無関係の問題で,
dat が前回取得時から更新されていない場合に起こるということです.
普通のスタティックな html ページなどと同じで,更新されていれば
新たなページ内容が返ってくる,更新されてなければ 304 が返ってきて
ブラウザはキャッシュを利用すると.

ただ,文字コード変換は IE のためだけにわざわざやっているんで,
>>510 のようにすることはできます.
537root▲ ★
垢版 |
2006/08/14(月) 16:09:58ID:???0
>>510 の下のほうかなぁ。
538ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 16:10:15ID:???0?DIA(30602)
おぉ?IEは以外は文字コード変換しなくても
大丈夫なんですか?
2006/08/14(月) 16:11:18ID:LiQ4r6Ez0
>>532
> そもそも304の応答にはボディはないからContent-Typeはつけちゃいけないし、
なるほど確かに。
> If the conditional GET used a strong cache validator (see section
> 13.3.3), the response SHOULD NOT include other entity-headers.
> Otherwise (i.e., the conditional GET used a weak validator), the
> response MUST NOT include other entity-headers; this prevents
> inconsistencies between cached entity-bodies and updated headers.

> entity-header = Allow ; Section 14.7
(中略)
> | Content-Type ; Section 14.17
2006/08/14(月) 16:12:30ID:pfMHSnaj0
(1)datの先頭に<!--あ-->等の文字を入れておく
(2)まずはsjis版のdatを取得に行く
 先頭の<!--あ-->が化けていない場合は新規取得っぽいのでそのまま表示
 <!--あ-->が化けている場合はキャッシュっぽいのでutf-8版を取り直す

こんな感じで文字コード変換の回数を減らせるかな。
2006/08/14(月) 16:12:36ID:WxMZYEQv0
>>538 少なくとも Firefox では問題ないようでした.
542root▲ ★
垢版 |
2006/08/14(月) 16:15:07ID:???0?PLT(15697)
>>540
「美乳の手法」ってやつでしたっけ。
ただし「美乳」は、euc-jp の時みたいですけど。
2006/08/14(月) 16:17:17ID:fNT1qkg10
個人的には<!--ゲイツ氏ね-->とでも
544ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 16:18:00ID:???0?DIA(30602)
IEのバージョンによってOKだったりするんですかね?
2006/08/14(月) 16:19:43ID:pfMHSnaj0
7では直っていることを期待したいですね。
2006/08/14(月) 16:19:47ID:LiQ4r6Ez0
>>544
IE7だと大丈夫という説があるけど未確認です
2006/08/14(月) 16:21:16ID:WxMZYEQv0
>>540 それだと,IE の場合キャッシュを使わず毎回サーバから取ってくるのと
変わらない,っていうか dat の仕様変更になるんで各方面に与える影響が......

# dat の仕様変更するなら,上の方で出てた XML の CDATA セクションに突っ込む形の方が......
548root▲ ★
垢版 |
2006/08/14(月) 16:29:49ID:???0?PLT(15697)
dat に「美乳」みたいなの入れる方向は、全く考えてないです。>>547
特定の実装の虫にそういう方向で対応するのは、
管理人が「やれ」といわない限り、ない方向で。
549ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 16:35:58ID:???0?DIA(30602)
文字化けの問題がIE7で解決されるのであれば、
いずれ解決されるって前提で進めたほうがいいとおもうです。
2006/08/14(月) 16:47:54ID:pfMHSnaj0
初回 sjis取得

リロード1回目(更新あり)
   sjis取得
リロード1回目(更新なし 304)
   sjisキャッシュ破棄 → utf-8取得

リロード2回目以降(更新あり)
   sjis取得
リロード2回目以降(更新なし 304)
   sjisキャッシュ破棄 → utf-8キャッシュを表示

・・・混乱してきた。

どうせIE7で直るなら、変な小細工を考えないほうがいいですね。
2006/08/14(月) 16:51:49ID:1kFRvFPJ0
UAで判断する方針?
2006/08/14(月) 16:56:23ID:WxMZYEQv0
>>118(って今はないのかな?)を IE 7 で見てもらって問題ないなら
文字コード変換かけるのは IE 6 限定ってことでもいいかもですね.
2006/08/14(月) 16:56:32ID:oLLYslxgP
>>549
オートアップデートである日突然元の仕様に戻って2ちゃん化け化けとか
2006/08/14(月) 17:14:04ID:clLu5sZ/0
if (window.XMLHttpRequest) { //Mozilla, Firefox, Safari, IE7
 sjisのdatでok
}else if(window.ActiveXObject) { //IE5,IE6
 urf-8のdatで
}else{ //そもそも無理な人たち
 read.cgiへ
}

これで、safari以外たぶん大丈夫になる。
2006/08/14(月) 17:36:00ID:fNT1qkg10
まずはSJISのdatを取得して、化けてる(304でキャッシュを開いてる)時だけUTF8版を取りに行く。
更新がずっと無ければUTF8版のキャッシュが表示される。

2回のリロードごとに更新があると効率が悪い。
2006/08/14(月) 23:17:51ID:LiQ4r6Ez0
>>552
>>508で書きましたけど>>118はもうつながらないです。
read-sjis.jsとかdso上に置けませんか?
2006/08/14(月) 23:37:52ID:sW64q9m+0
streamカモーン
2006/08/15(火) 00:38:31ID:ojmXh8q60
Shift JIS のままの dat を取ってくるなら,>>510 の設定を dso に入れてほしいと......

まぁどっちにしろ,少なくとも IE 以外は Shift JIS の dat を取ってくる形にすれば
ムダにはならないんで.
559root▲ ★
垢版 |
2006/08/15(火) 00:49:21ID:???0
>>510 の下の設定を dso に入れるです。
560root▲ ★
垢版 |
2006/08/15(火) 00:53:39ID:???0?PLT(15697)
>>559
done.
2006/08/15(火) 01:00:44ID:ojmXh8q60
>>559-560 乙です.

とりあえず,しばらくの間 IE 6 も含めすべて Shift JIS の dat を取ってくる形にします.
IE 6 の問題体験ツアーってことでw
562root▲ ★
垢版 |
2006/08/15(火) 01:04:45ID:???0?PLT(15697)
>>561
だめ出ししようってことすね。了解です。
2006/08/15(火) 01:05:26ID:qeiAdM0E0
なるほど。リロードするとおもくそ化けますた@IE6
Firefox 1.5.0.6では問題なし
ではリブートしてIE7で試してみますノシ
2006/08/15(火) 01:15:29ID:zanmU7rX0
>>563
ウチのIE6は化けないけど、、、
2006/08/15(火) 01:21:17ID:qeiAdM0E0
>>563
read.html更新されてます?
キャッシュの設定は?
とりあえずIE7だと化けませんですた
2006/08/15(火) 01:21:44ID:qeiAdM0E0
リンク先間違えたorz
×>>563
>>564
2006/08/15(火) 01:24:43ID:ojmXh8q60
Opera/9.01 (X11; SunOS i86pc; U; en) でも問題ない模様.


>>564 上の方にも IE 6 で文字化けしないって人がいたけど,それはブラウザの設定で
キャッシュが残らないようになっていたためだったということなんで (>>135),そのあたり確認を......

>>565 どもです.IE 7 なら大丈夫そうとなると,dat-utf8 は IE 6 限定でもよさそうかな.
2006/08/15(火) 01:29:54ID:v4RrwvPg0
IE5を見放さないで
569root▲ ★
垢版 |
2006/08/15(火) 01:31:41ID:???0?PLT(15697)
>>568
開発元(MS)って、IE 5.x をまだサポートしていましたっけ。
2006/08/15(火) 01:32:38ID:Vjx6htrB0
IE5とIE6は、ちょうど限定して使える、
responseBodyで、クライアント側で文字コード変換しようか。
2006/08/15(火) 01:36:07ID:ojmXh8q60
>>568 まぁ read.html の対象外となっても決して利用不能になるわけではなく,
単に従来式の read.cgi に振り分けることになるだけなんで......

>>570 それって,かなり重いって話もあるようですが......
2006/08/15(火) 01:37:14ID:qeiAdM0E0
>>569
IE 5.5はかなり昔にサポートが切れますた
Windows 2000でのみ、IE 5.01がまだサポートされてます
(OSに付属のバージョンなのでOS自体と同じサポート期間)
でもどのみち5.0はダメっぽいので(>>471)
0.4%程度なら(>>469)read.cgiに振っても負荷にはほとんど影響しないでしょう。
>>570
もしかして /dat-utf8 を全廃できる?
2006/08/15(火) 01:48:15ID:v4RrwvPg0
マカーos9組は、IE5.1.7でサポート終了してます。(涙
2006/08/15(火) 01:50:41ID:Vjx6htrB0
http://winofsql.jp/VA003334/asp051115161559.htm#ttl3

vbsのはあった。

 ' バイナリ -> 内部コード
 For i = 1 To LenB( strBin )
  c1 = AscB(MidB(strBin, i, 1))
  if &H81 <= c1 and c1 <= &H9f or &He0 <= c1 and c1 <= &Hfc then
   i = i + 1
   c2 = AscB(MidB(strBin, i, 1))
   c1 = c1 * 16 * 16 + c2
  end if
  strVbs = strVbs & Chr(c1)
 Next

処理自体はこのぐらい。
2006/08/15(火) 01:52:49ID:qeiAdM0E0
>>574
VBならStrConv一発
http://www.f3.dion.ne.jp/~element/msaccess/AcTipsVbaXMLHTTP.html
IEだとADODB.Streamというのが使えたらしいが今はだめぽ
http://ponpon-village.net/ajax/xmlhttp.htm
2006/08/15(火) 01:53:07ID:toLvEDbv0
IEのバージョンとかにかんしては
http://www.quirksmode.org/browsers/multipleie.html
http://blog.ikesai.com/log/2006/07/ie7_beta3ie6.html
ここで過去のIEやら未来のIE拾ってくれば検証できるかな
あとでかいスレを読み込んだ時にフリーズするから
http://www.kawa.net/works/js/8queens/nqueens.html
ここの手法を用いて逐次表示にして欲しいところ。

文字化けとかは正直よくわからん
2006/08/15(火) 01:58:34ID:zanmU7rX0
理由はわからないけど何故か文字化けしないっす
キャッシュも残ってるし、、、
2006/08/15(火) 02:01:12ID:qeiAdM0E0
>>577
read.htmlのソースには datx って入ってる?
dat-utf8 が入ってたらソースが古いのでスーパーリロードとかしてみて
2006/08/15(火) 02:08:14ID:zanmU7rX0
キャッシュクリアしてみたりスーパーリロードしてからでも化けないっす、、、謎
2006/08/15(火) 02:09:18ID:qeiAdM0E0
>>574
あ、VBじゃなくてVBSか。VBSにはStrConvはないのね。
どうせIE専用なんだからVBScriptで関数作ってJavaScriptから呼べばいいと思われ
2006/08/15(火) 02:10:09ID:qeiAdM0E0
>>579
まあ化けない環境が存在するからって化ける環境の対策が不要ってことには
ならないので。
2006/08/15(火) 02:19:16ID:ojmXh8q60
でもまぁ,IE 7 で問題が解消するとなると,いずれ IE 7 の割合が増えて
IE 6 の割合が減るなら,mod_charset_lite 利用による負荷は時間が解決してくれる
はずってことで,あえて複雑なことをするまでもないかな,って気もします.
フィルタ通すことによる負荷なら,上の方でも言ってますが mod_deflate による
gzip 圧縮の方がよほど重いんで.
583root▲ ★
垢版 |
2006/08/15(火) 02:25:05ID:???0?PLT(15700)
>>582 に同意ですね。
IE6 は「長いもの」なので、特別扱いでもまぁしょうがないのかなと。
2006/08/15(火) 06:59:20ID:i2D78TlA0
長いものに巻かれるというか、長いものに振り回されてる感じ
585ひろゆき@どうやら管理人 ★
垢版 |
2006/08/15(火) 07:01:25ID:???0?DIA(30604)
んでは、IE6のをdat-utf8にしてみるってことで、
あと解決しなきゃいけない問題ってどんなのでしょう?
2006/08/15(火) 09:04:39ID:i2D78TlA0
「書き込みました」の画面に書き込んだ投稿の内容を埋めておけば、
書き込み後にdatを再取得する手間が省けるかなあ。

でも、同時に複数書き込みがあったとき(1000ゲットなど)にレス番号表示がおかしくなるかも。
2006/08/15(火) 09:38:33ID:VQ0W/EIL0
結局datから必要な部分を切り出してUTF-8に変換するCGIを用意するだけに
落ち着きそうな気もしてきた。
2006/08/15(火) 09:44:42ID:9b41f8lUP
巨大AA貼りつけスレを見ると30秒くらいCPUフル稼働する…
Opera9(Win)
589root▲ ★
垢版 |
2006/08/15(火) 11:15:19ID:???0?PLT(15700)
さて、ぼちぼち dso サーバの bbs.cgi が吐くリンクを
read.html にしてみようかなと思うわけですが、
単に、

read.cgi/板名/キー/引数

を、

read.html#板名/キー/引数

に変換すればいいのかしら。
2006/08/15(火) 11:52:02ID:ojmXh8q60
>>585 あとは,細かい改良の積み重ねって感じでしょうか......


>>589 subback.html の URL の変更はちょっと大変かも......現状では

<base href="http://dso.2ch.net/test/read.cgi/myanmar/";>
<a href="1111111111/l50">...</a>

のようになってますが,これを

<base href="http://dso.2ch.net/test/read.html#myanmar/";>
<a href="1111111111/l50">...</a>

にしてもダメで(base に # を含む URL を指定してもナンセンスで,
この場合 "http://dso.2ch.net/test/"; として扱われてしまう),

<base href="http://dso.2ch.net/test/";>
<a href="read.html#myanmar/1111111111/l50">...</a>

のようにしなければなりませんが,こうなると subback.html がデカくなりそうです......

さらに,上の方でも言いましたが,subback.html 中のリンク自体を location.hash 形式にすると
read.html 非対応ブラウザを従来版 read.cgi に直接リダイレクトさせるのも不可能になってしまいます.
逆に read.cgi/...... から read.html#...... へリダイレクトさせるのは可能ですが,
リダイレクトによる HTTP リクエストを削減させるとすれば,302 Found の代わりに
301 Moved Permanently を返せばいいのかな(ただ,301 を返すようにするのは
URL の仕様がちゃんと固まってからの方がいいでしょうけど).
2006/08/15(火) 13:05:38ID:i2D78TlA0
IEで未読と既読の区別がつかなくなるという問題も。
592root▲ ★
垢版 |
2006/08/15(火) 13:29:16ID:???0?PLT(15700)
>>590
ふむふむ。

subback.html が大きくなるのは、ある程度は仕方がないと割り切れるのかな。
何といっても、read.cgi の起動回数が大幅に減るわけで。

> 逆に read.cgi/...... から read.html#...... へリダイレクトさせるのは可能ですが,

これは、read.cgi が一度は起動してしまうのかしら。
dso だから、それでもかなりいいかんじですけど。

>>591
それはあるですね。
2006/08/15(火) 13:32:04ID:qeiAdM0E0
subbackのリンクは標準では従来通りにして、JavaScriptで
(onclickとかonloadを見張って)差し替えたらどうですか?
どうせJavaScriptが有効でないとread.htmlは使えないんだし
>>591の問題も解決する。
2006/08/15(火) 13:54:23ID:qeiAdM0E0
具体的にはこんな感じのをsubback.htmlのヘッダに突っ込むだけ
<script type="text/javascript"><!--
document.onclick = function(e) {
var t = window.event ? event.srcElement : e.target;
if (t && t.href) {
window.open(t.href.replace(/read.cgi\//, 'read.html#'), t.href.target);
return false;
}
}
--></script>
595root▲ ★
垢版 |
2006/08/15(火) 13:54:27ID:???0
>>593
面白いかも。

…でも、具体的にはどんな subback を生成すればいいのかしら。
596root▲ ★
垢版 |
2006/08/15(火) 13:55:04ID:???0
>>594
おー、かぶりました。

subback の頭に入れればいいのかしら。
2006/08/15(火) 13:58:25ID:qeiAdM0E0
>>596
yes. <head>〜</head>の間のどこかです。
手元ではとりあえずIEとFirefoxで動いてるみたいです。
598root▲ ★
垢版 |
2006/08/15(火) 14:04:26ID:???0
subback.html はこれでやってみるとして、
index.html は、どんなかんじになるのかしら。同じでいいのかな。
2006/08/15(火) 14:08:05ID:qeiAdM0E0
>>598
試してみましたけどindex.htmlの場合は
<a href="#1">
のリンクを踏んだときの動作が微妙ですね。ちょっと改良が必要かも。
2006/08/15(火) 14:11:18ID:qeiAdM0E0
ってことで改良版。
<script type="text/javascript"><!--
document.onclick = function(e) {
var t = window.event ? event.srcElement : e.target;
if (t && t.href) {
t.href = t.href.replace(/read.cgi\//, 'read.html#');
}
}
--></script>
2006/08/15(火) 14:13:01ID:qeiAdM0E0
subback.htmlも>>600のほうがいいです。
2006/08/15(火) 14:14:37ID:qeiAdM0E0
あ、すみません。最後の行は
//--></script>
にしてください(先頭に // を入れる)。
603root▲ ★
垢版 |
2006/08/15(火) 14:14:46ID:???0
どもです。

同じものを両方に入れればいい(サブルーチン一つ書けばいい)のかしら。
2006/08/15(火) 14:15:42ID:qeiAdM0E0
>>603
はい。細かいところはお任せします。
605root▲ ★
垢版 |
2006/08/15(火) 14:32:20ID:???0?PLT(15700)
dso に入れてみた。< bbs.cgi

で、
#RewriteRule /?read\.cgi(?:/(.*))?$ /test/read.html#$1 [R,NE]

を、コメントアウトした。
606root▲ ★
垢版 |
2006/08/15(火) 14:35:58ID:???0?PLT(15700)
ランタイムエラーが出るみたい。ううむ。
2006/08/15(火) 14:36:34ID:qeiAdM0E0
>>605
/read.cgi\//
の \ が抜けて
/read.cgi//
になってるので、正常に動いていないようです。
608root▲ ★
垢版 |
2006/08/15(火) 14:37:39ID:???0?PLT(15700)
ここかな。

t.href.replace(/read.cgi//, 'read.html#');
2006/08/15(火) 14:38:54ID:qeiAdM0E0
""で囲んでるなら\も二重にしないと。
610root▲ ★
垢版 |
2006/08/15(火) 14:39:35ID:???0?PLT(15700)
>>607
\\ にしてみた。< bbs.cgi

どうかな。
611root▲ ★
垢版 |
2006/08/15(火) 14:40:58ID:???0?PLT(15700)
いい感じみたいですね。
リンク押しても紫にならないけど(それはしょうがないか)。
2006/08/15(火) 14:42:49ID:qeiAdM0E0
Firefoxではうまくいってる予感
613root▲ ★
垢版 |
2006/08/15(火) 14:46:45ID:???0?PLT(15700)
Sleipnir (IE6 エンジン)では、うまくいっているみたいです。

これ、いいすね。
で、JavaScript なしバージョンだと、普通に read.cgi ですか。

read.cgi を read.cgi という名前で*も*、有効にしてきます。
SunOS さんが read.so のところを read.cgi にしたら、
read.so はなしにします。
614root▲ ★
垢版 |
2006/08/15(火) 14:48:54ID:???0?PLT(15700)
>>613
これで、普通に read.cgi は read.cgi として起動するようになった。
2006/08/15(火) 14:49:46ID:D0hTYs/40
未読既読はスレにはられるやつにも影響あるなあ...

IEが落ちる
フリーズしたようになる(>>576)
戻るがおかしい
は直して欲しいな。
2006/08/15(火) 14:55:54ID:D0hTYs/40
read.htmlでも>>600いれればいいのかな
2006/08/15(火) 14:57:11ID:qeiAdM0E0
read.htmlに組み込むのはSunOSさんにお任せってことで。
2006/08/15(火) 16:38:33ID:YoisifmF0?2BP(112)
いやあ、近未来的だなぁ とか言ってみる
Ajax版P2 みたいなものを期待
2006/08/15(火) 18:40:01ID:D0hTYs/40
>>600だと既読になるのは#のほうだから未読既読は解決しないのか。
あとIEだとコンテキストメニューから開くとonclickが呼ばれない。
2006/08/15(火) 18:42:09ID:D0hTYs/40
あとimu.nuとかでもあったけど、
条件を厳しくしないと誤爆するね。
2006/08/15(火) 19:24:07ID:i2D78TlA0
ime.nuみたいなリダイレクト専用サーバーを立ててそこにリンクを張るとか。
(クリックさせないで一瞬で飛ばす)


で、そのサーバーがこけるたびに大混乱
2006/08/15(火) 23:36:19ID:qeiAdM0E0
IEの右クリックと誤爆対策。
<script type="text/javascript"><!--
document.onmousedown = function(e) {
var t = window.event ? event.srcElement : e.target;
if (t && t.href) {
var h = t.hostname;
if (h && h.length > 8 && h.substring(h.length - 8) == '.2ch.net') {
t.href = t.href.replace(/read.cgi\//, 'read.html#');
}
}
}
//--></script>
bbspinkへの対応は、15日になったしいらないよね? とか言ってみる。
2006/08/15(火) 23:46:19ID:Vjx6htrB0
ずーっと気になってし、言いだしっぺも自覚してると思うんだけど
read.html見たいな動的ページって検索エンジンに拾って貰えない気がするんだ。
そのへんはおkなの?
read.cgiが生きてる限り大丈夫だけど、ページランクは下がるだろうし。
2006/08/15(火) 23:50:42ID:GkMQ9KNq0
ネイバーに限らず、クローリング自体での負荷の上昇も嫌ってるのでそこは問題ないはず。
625root▲ ★
垢版 |
2006/08/15(火) 23:59:54ID:???0?PLT(15700)
>>623
read.cgi を殺す気は(私は今のところ)ないですね。

>>622
bbspink.com も対応できるようにしておいていただけると、
とてもよいかなと。

というか >>622 により、どうなるんでしたっけ。
素人質問でごめんなさい。
2006/08/16(水) 00:09:32ID:/guPVXYD0
IE 6 だけ dat-utf8,それ以外 datx にしますた.
プログレッシブな表示ってのも入れたつもり.
戻るについては,>>337-341 あたりと同じような問題があって......

read.cgi/... のリンクを read.html#... に変換するのも入れますた.
>>600 のはおもしろそうだけど,>>619 のコンテキストメニュー問題と
あとステータスバーに出るURL がクリックするまで変わらないっていう問題も
対応するとこんな感じかな.

    for (var i = 0; i < document.links.length; i++)
        if (/^http:\/\/(?:\w+\.)?(?:2ch\.net|bbspink\.com)\/test\/read\.cgi\/?/.test(document.links[i].href)) {
            var isEqual = document.links[i].href == document.links[i].firstChild.data;
            document.links[i].href = document.links[i].href.replace(/read\.cgi(\/)?/, function(s, slash) { return "read.html" + (slash ? "#" : ""); });
            if (isEqual)
                document.links[i].firstChild.data = document.links[i].href;
        }

あと,subback.html や index.html のは,実用化段階では JavaScript 有効でも
read.html 対象外のブラウザは従来通りの URL ってことにしなきゃですね.
2006/08/16(水) 00:11:57ID:h/ciZhm70
DOMでぴゃーっと書き換えちゃうコード入れときゃおkじゃね?
628root▲ ★
垢版 |
2006/08/16(水) 00:13:43ID:???0?PLT(15700)
>>626
おつです。

index.html や subback.html に仕込むのも、それにしたほうがいいのかしら。

で、>>626 の最後の2行をうまく実装する必要があると。
2006/08/16(水) 01:07:31ID:E7jjTUzM0
いくつかの問題を解決するのが難しいなら
普通のread.cgiを使うかどうかをCookieに保存できればいいなあ
2006/08/16(水) 01:13:39ID:LnZ4IU4t0
>>623
JavaScriptで置き換える方法だと検索エンジンから見たソースは今まで通り
なので問題なし
2006/08/16(水) 01:14:40ID:LnZ4IU4t0
>>628
> index.html や subback.html に仕込むのも、それにしたほうがいいのかしら。
SunOSさんの書いたものの方がおすすめ
2006/08/16(水) 01:25:53ID:/guPVXYD0
あぁ,>>626 のは subback.html では

onload = function(e) {
   :
};

で挟む形で.ただ,index.html の方はそのままだと index.js と衝突するのと,
さらに <font> タグをやめた S★ の装飾とかを JavaScript でやるなら
be.js もインクルードするってことで,そのあたりとの兼ね合いもあるかな......


>>629 単純に JavaScript を切れば従来版 read.cgi にジャンプするのでは?
名前欄とかはブラウザのフォームコンプリート機能を使うとかで......
633root▲ ★
垢版 |
2006/08/16(水) 01:42:09ID:???0?PLT(15700)
>>632
なるほど、index.html でうまく動かないのは、そういうことですか。

とりあえず、ちと食事。
2006/08/16(水) 01:46:20ID:E7jjTUzM0
過去ログ鯖とかは変換しないほうがいいような

>>632
JavaScript有効時の話
2006/08/16(水) 01:52:59ID:/guPVXYD0
>>634 >>626 の逆をやる bookmarklet を登録しておくとか.
636root▲ ★
垢版 |
2006/08/16(水) 01:54:49ID:???0?PLT(15700)
とりあえず、index.html はさっきまでのものに戻しておきます。
2006/08/16(水) 02:02:40ID:E7jjTUzM0
>>635
index.htmlとかsubback.htmlでだけど、
「問題を解決するのが難しいなら」書き換えるかどうかの選択肢がほしい
2006/08/16(水) 02:09:35ID:E7jjTUzM0
で、外から飛んできたときはどうするのがいいんだろう?
2006/08/16(水) 02:18:09ID:/guPVXYD0
>>637 バックボタンとかその辺ですか? これはブラウザの仕様とかの
兼ね合いもあるんですが...... いっそ別窓で開かせればすっきりするのかなぁ......
あるいは,外側の html のキャッシュ問題(ひいては鯖の負荷問題)を無視して
PATH_INFO 形式をデフォルトにするか......


>>638
RewriteCond %{HTTP_USER_AGENT} ほげほげ
RewriteRule /?read\.cgi(?:/(.*))?$ /test/read.html#$1 [R=permanent,NE]

でもこれなら,subback.html とかの JavaScript もいらないことになるのか......

# 実際 permanent にしちゃうのは >>590 ってことで.
2006/08/16(水) 02:41:17ID:LnZ4IU4t0
>>639
そもそも>>590とか>>623の問題を解決するためのJavaScript案なんだから
両取りは無理では
2006/08/16(水) 02:49:54ID:/guPVXYD0
>>640 ん? RewriteCond / RewriteRule 使えば,subback.html 中の URL は
read.cgi/... のまま(従来通り)で read.html#/... に飛ばせる,
で read.html 対応ブラウザだけ RewriteCond で判定して飛ばせば
検索ロボットはそのまま read.cgi に逝くかと.
2006/08/16(水) 02:51:30ID:LnZ4IU4t0
> ただ,User-Agent の判定はできても JavaScript の on / off の判定は
> サーバ側ではできないので,対応ブラウザでも JavaScript off の場合の
は?
2006/08/16(水) 03:08:49ID:/guPVXYD0
>>642 あぁ,そうか...... となると,subback.html とかには JavaScript 入れて,
Referer が subback.html とか以外の場合に RewriteRule が有効になるようにすればいいのかな......
2006/08/16(水) 08:25:07ID:/guPVXYD0
ちょいとこちらで dso の bbs.cgi いじってみますた.

>>626 を index.js 等と衝突しない形で index.html に入れた.
・ be.js を index.html にも入れてみた.


んで,read.html のキャッシュを生かして鯖へのアクセスを抑制するには
location.hash 形式がいいんですが,ブラウザの仕様上

・ ロケーションバーから直接 URL 入力した場合や「戻る」ボタンの問題
・ 履歴(未読・既読)の問題

ってあたりで利便性は低下するんですよね......もしこのあたりの問題で
利用者の不満が強いようなら,涙を飲んで PATH_INFO 形式をデフォルトに
した方がいいのかなぁ......
645root▲ ★
垢版 |
2006/08/16(水) 11:54:13ID:???0?PLT(15700)
>>644
> ちょいとこちらで dso の bbs.cgi いじってみますた.

うひょひょ。見てみるです、見てみるです。

# 意外に早かったかも。
# でも、管理人からのメールの返事にあった「くれぐれも」で始まるひとことも、
# たまには思い出すといいかもかも。
#
# …などとえらそうに、言っておこう、言っておこう。

> もしこのあたりの問題で
> 利用者の不満が強いようなら,涙を飲んで PATH_INFO 形式をデフォルトに
> した方がいいのかなぁ......

現状の「サーバ資源の逼迫度合い」を考えたら、
PATH_INFO 形式でもいいのかもしれないですね。
646root▲ ★
垢版 |
2006/08/16(水) 13:41:53ID:???0?PLT(15700)
bbs.cgi みました。

とてもいい感じなので、そのまま本体に反映するです。
で、be.js は、http://www2.2ch.net/snow/index.js と同じところに置こうかと。
647root▲ ★
垢版 |
2006/08/16(水) 13:51:56ID:???0?PLT(15700)
>>646
配布済。
2006/08/16(水) 14:51:25ID:/guPVXYD0
>>645-647 手を付けていいものか迷いもあったんですが,
手っ取り早く結果を見たかったんでいじっちゃいました.
諸々のことについては気を付けますです,はい......

で,be.js は www2 の方に置いて頂けたようなので,
read.html から参照するのもそちらに変更します.
649root▲ ★
垢版 |
2006/08/16(水) 14:59:33ID:???0?PLT(15700)
>>648
どもです。「気をつける」というマインドが重要ですね。

あとはここでいろいろ言わなくても、実例(私とか)がここにはいっぱいいるし。
2006/08/16(水) 20:32:55ID:/guPVXYD0
http://dso.2ch.net/test/read.html#myanmar/1155416372/l50
のスレとか IE でも落ちなくなったようだけど,どうかな......?

あとは,PATH_INFO 形式をデフォルトにすれば >>615 とかで言われてたような
問題は一応片付くことになるかな......
2006/08/16(水) 20:46:11ID:b6ftN9XA0
>>650
落ちた上に文字化けしてる
6.0.2800.1106.xpsp2.050301-1526
2006/08/16(水) 20:53:19ID:/guPVXYD0
>>651 あら......てか文字化けですか......なぜだろう......
2006/08/16(水) 20:55:10ID:Dx5C0gJy0
外側のHTMLが文字化けしてる・・・。中のdatは無事、落ちることもないです。
IE 7.0.5450.4 (Beta 3)

(てかXML宣言のencodingを読んでないのか?)
2006/08/16(水) 21:00:16ID:/guPVXYD0
>>653 IE 7 でもまだ不完全な部分があるのか......
とりあえず <meta> で指定しますた.
2006/08/16(水) 21:05:22ID:b6ftN9XA0
>>654
完璧に表示されるようになった
2006/08/16(水) 21:06:51ID:/guPVXYD0
>>655 どもども......じゃあ落ち問題は解決かな......?
2006/08/16(水) 21:13:49ID:6ZuKMjYI0?DIA(41778)
ん!?
いつから★は青くなったの?
2006/08/16(水) 21:51:43ID:y6Nh7BqC0?2BP(112)
http://dso.2ch.net/test/read.html#myanmar/1155416372/
容量オーバーで埋めておいた
2006/08/16(水) 22:32:44ID:9EA3K/ii0


Opera/8.54 (Windows NT 5.1; U; ja)
2006/08/16(水) 22:35:13ID:9EA3K/ii0
途中送信してしまったorz

上の環境で>>658を開くとCPUが90〜100%になり、スクロールがぎこちないです
Pen4 1.7GHz
2006/08/16(水) 22:42:02ID:y6Nh7BqC0
火狐1.5.0.6だけど>>658開くとエラー出る。
http://vista.xii.jp/img/vi5573560616.jpg
俺のPCヘタレ杉ワロタ
2006/08/16(水) 22:50:11ID:77FAh90w0?BRZ(3010)
javascript:void%200;
(´・ω・`)ショボーン

Safari
バージョン 2.0.4(419.3)
2006/08/16(水) 22:50:21ID:/guPVXYD0
>>660 まぁデカいスレの表示で重くなるのはある程度仕方ないかな,と......

>>661 Firefox は,JavaScript 処理に時間がかかるとそのダイアログが出ますね.
2006/08/16(水) 22:56:47ID:/guPVXYD0
>>662 う〜む......そのあたりは難しいのかなぁ......
2006/08/16(水) 23:04:59ID:39aT7eBV0
>>658
IE6+Sleipnir
変換中は、スクロール重くなるけど
表示しきるとスクロールも大丈夫な感じ
2006/08/16(水) 23:17:30ID:E7jjTUzM0
Firefoxだと読み込み時にメモリ食うね
2006/08/16(水) 23:55:45ID:ywphgZ25O
IE6 WinXP SP2 Pentium4 2.4G
658を開くとCPUが100%になって固まるorz
Operaも固まりはしないけど、スクロールしなくても常に80%以上orz
困った…

DSBLに引っ掛かったので携帯からカキコ
668ノtasukeruyo
垢版 |
2006/08/17(木) 16:36:22ID:q2qdvPTD0
>>658見ても特に大丈夫でした。
スペックはセレロン2.0GHzメモリ512MB
Monazilla/1.00 (JaneStyle/2.41)
669ノtasukeruyo
垢版 |
2006/08/17(木) 16:38:50ID:q2qdvPTD0?2BP(103)
やべ、専ブラからだったorz
Opera/9.01 (Windows NT 5.0; U; ja)
2006/08/17(木) 16:43:11ID:Qz3nUcm20
javaScript 確実にonにしてることがわかると、なんか仕込まれたりしない?>リンク先とか
2006/08/18(金) 05:08:21ID:2vKSSdJ50?2BP(50)
そんな事を画策するまでもなく、多くの人はIEの初期設定のままで、
あんなことやこんなことができてしまうのです。
と、2chの穴を突いた経験談から。
2006/08/18(金) 15:49:04ID:9WKeiNnR0
自動更新のあった次の日に「勝手に再起動すんなボケ!」ってスレが立つくらいだしね。
673ひろゆき@どうやら管理人 ★
垢版 |
2006/08/20(日) 00:53:18ID:???0?DIA(30710)
どうすか。どうすか。
674root▲ ★
垢版 |
2006/08/20(日) 00:59:10ID:???0?PLT(15700)
>>673
>>650 >>663 あたりかしら。

着実に、という印象を、私は持っているです。

あと、BE 表示部分を SunOS さんが JavaScript でかっこよくしたです。
http://dso.2ch.net/test/read.html#myanmar/1155409133/

で、これをニュー速というか標準 read.cgi あたりでもやるとかそのへんも、
テクニカルには可能になりつつあったり。
2006/08/20(日) 00:59:27ID:saHukmfv0
先生、催促しているようにも見えます(,,゚Д゚)∩
2006/08/20(日) 01:00:06ID:wuf7kbVG0
僕は規制ちゃん!
677root▲ ★
垢版 |
2006/08/20(日) 01:00:20ID:???0?PLT(15700)
ありゃ、l50 ってつけないと私の環境では変化しないみたい。

http://dso.2ch.net/test/read.html#myanmar/1155409133/l50
2006/08/20(日) 01:00:53ID:Tgt+NvhB0
BE 表示部分普通にかっこいいな
679root▲ ★
垢版 |
2006/08/20(日) 01:01:00ID:???0?PLT(15700)
>>675
やっぱり?
2006/08/20(日) 01:02:28ID:wuf7kbVG0?DIA(41778)
Be表示部分に車体を使うの、個人的にやめて貰いたいんだけど、らめ?

俺は大丈夫だけど、環境によっては読みにくかったりするんだ。
681root▲ ★
垢版 |
2006/08/20(日) 01:03:31ID:???0?PLT(15700)
>>680
そのへんは、ここでわいわいと。
682ひろゆき@どうやら管理人 ★
垢版 |
2006/08/20(日) 01:04:52ID:???0?DIA(30710)
斜体はたしかに読みづらいすね。

l50をつけなくても動くようにしたほうがいい予感です。
2006/08/20(日) 01:05:43ID:Xm+GrVIr0
まぁ,実用化するならブラウザの振り分けも決めなきゃならないってことで,
dso も tasukeruyo を有効にしてもらった方がいいのかな.
684root▲ ★
垢版 |
2006/08/20(日) 01:07:13ID:???0?PLT(15700)
>>683
すぐできるので、やっておくです。
2006/08/20(日) 01:08:28ID:kgBia6Rr0
SunOsさんの超技術でアンカーポップアップ導入もお願いします><
2006/08/20(日) 01:08:34ID:wuf7kbVG0?DIA(41778)
>>681
そっか。

非 JavaScript 版は URL 中の read.html を read.cgi に

の動作がJavaScriptで動いてるみたいなんだけど、これは未対応ブラウザのためのものであって、
JavaScript自体が使えない人のためのものではないの?

で、その辺がめんどくさかったりするから全部クライアントにやらせず鯖にも働いてもらいましょみたいなことを
この前言ったんだけど、それは無理なの?
2006/08/20(日) 01:09:33ID:Xm+GrVIr0
>>677 直接 URL 入力すると云々っていう location.hash 形式の問題とかではなくて?

>>680 BE がイタリックになるのは BE チェックでレス非表示にした場合で,
デフォルトではイタリックにしてるつもりはないんですが,デフォルトでも
イタリックになっちゃうんですか?
2006/08/20(日) 01:12:37ID:Xm+GrVIr0
>>686 それは,ローカルファイルに保存するのに非 JavaScript 版への
リンクもあった方がいいっていう意見もあったために入れますた.
未対応ブラウザについては,subback.html / index.html のリンク自体が従来版向けになります.
2006/08/20(日) 01:22:28ID:wuf7kbVG0?DIA(41778)
>>687
どっちにしろ使う人が居ることは事実だから斜体はやめた方がいいかなと…

まぁ俺の環境では動いた感があって良いんだけどwww

どうしても動かしたいのなら
cssで囲い(上下左右全部とは言わず)を付けたり、レス番を光らせたり、下線を付けたりしてみるといいかも

>>688
おk把握
690root▲ ★
垢版 |
2006/08/20(日) 01:25:35ID:???0?PLT(15700)
>>683
done.

>>687
> >>677 直接 URL 入力すると云々っていう location.hash 形式の問題とかではなくて?

IE6 ではうまくないみたい。
他の人はどうなのかな。
2006/08/20(日) 01:31:23ID:Xm+GrVIr0
>>690 なんかわかったような......パフォーマンスも多少は上げられないかと
試行錯誤してた時にエンバグしたようで......直します......

>>689 つまり,BE チェックで非表示にしたレスでもイタリックにしない,
って意味ですか?
2006/08/20(日) 01:35:24ID:9wliRzU50
DOMソースでみるとitalic付いてますね。

>>691
グレーにするとかどうですか?
2006/08/20(日) 01:36:31ID:wuf7kbVG0?DIA(41778)
ライン:327
エラー:'this.texts[...].0'はNullまたはオブジェクトではありません。
URL:http://dso.2ch.net/test/read.html

たまにこのエラーが出る…@http://dso.2ch.net/test/read.html#myanmar/1155409133/

>>691
そうです。分かりにくくてすまn
2006/08/20(日) 01:38:28ID:Xm+GrVIr0
>>693 それがエンバグしてた部分で......直しますた.
下一行は了解です.これは be.js 側ですね.
695root▲ ★
垢版 |
2006/08/20(日) 01:46:37ID:???0?PLT(15700)
>>694
直ったようです。
696root▲ ★
垢版 |
2006/08/20(日) 01:47:03ID:???0?PLT(15700)
で、be.js を更新してくるです。
dso にあるやつを入れればいいのかしら。
2006/08/20(日) 01:47:54ID:wuf7kbVG0?DIA(41778)
>>694
お疲れさん。寝るお

規制いつ解けるのかな…
★餅って規制関係ないんだよね?快適だね。
2006/08/20(日) 01:49:34ID:uH3oUtCL0?S★(110737)
ソリティアの色がウ○コ色といわれたですのでもうちょっと違う色ないですかね?
699root▲ ★
垢版 |
2006/08/20(日) 01:50:41ID:???0?PLT(15700)
このイメージが出ると、いいかも。 < 色
http://mumumu.mu/img/2bp/
700root▲ ★
垢版 |
2006/08/20(日) 01:51:52ID:???0?PLT(15700)
>>697
いや、モバイル系は prin と IIJmio 使っているので、
もろに該当です(困っているです)。
701root▲ ★
垢版 |
2006/08/20(日) 01:54:30ID:???0?PLT(15700)
>>696
done.
2006/08/20(日) 02:03:42ID:Xm+GrVIr0
>>696 >>701 乙です.ただ,イタリックを変えるとか色を変えるとかで
再びお手数をおかけするかもですが......

>>698-699 カラーコードか
http://www.w3.org/TR/SVG/types.html#ColorKeywords
の色名あたりで指定してもらえれば,と......
703root▲ ★
垢版 |
2006/08/20(日) 02:07:15ID:???0?PLT(15700)
>>702
> ただ,イタリックを変えるとか色を変えるとかで
> 再びお手数をおかけするかもですが......

それは承知しているですよ。

色については、その道のかたがやってくれるかなと。
ということで、今日の私はそろそろおひらき。
2006/08/20(日) 07:03:30ID:Xm+GrVIr0
非表示レスはイタリックの代わりに背景をグレーにしますた.
色は http://mumumu.mu/img/2bp/ を一応真似たつもり.
ただ,www2 のは自分では入れ替えられないのでとりあえず
一時的に dso のを読み込むようにしますた.
705root▲ ★
垢版 |
2006/08/20(日) 11:43:58ID:???0?PLT(15700)
>>704
www2 に入れました。 < be.js
2006/08/20(日) 18:56:44ID:Xm+GrVIr0
>>705 乙です.www2 のを読み込むように戻しますた.
2006/08/20(日) 19:48:43ID:TPuNj5iBP
ttp://sunos.saita.ma/inspired/
2006/08/22(火) 21:34:47ID:OG147ChH0
http://dso.2ch.net/myanmar/subback.html

IE 6 で見ると,スレタイが URL に化けちゃってる箇所があるような......
上の方でやってた ime.nu の時と同じバグ(a.href を書き換えると
中身のテキストも書き換わっちゃう)が顕在化してるのかな?
2006/08/22(火) 22:25:50ID:OG147ChH0
for (var i = 0; i < document.links.length; i++)
    if (/^http:\/\/(?:\w+\.)?(?:2ch\.net|bbspink\.com)\/test\/read\.cgi\/?/.test(document.links[i].href)) {
        document.links[i].normalize();
        var data = document.links[i].firstChild.data, isEqual = document.links[i].href == data;
        document.links[i].href = document.links[i].href.replace(/read\.cgi(\/)?/, function(s, slash) { return "read.html" + (slash ? "#" : ""); });
        document.links[i].firstChild.data = isEqual ? document.links[i].href : data;
    }

対処するとすれば↑,ついでに PATH_INFO 形式をデフォルトにするなら↓かな......

        document.links[i].href = document.links[i].href.replace(/read\.cgi(\/)?/, function(s, slash) { return "read.html" + (slash ? "/" : ""); });
2006/08/24(木) 00:10:04ID:Y+EGPfiv0
そういや operate2 は read.cgi が動いてないんですね.

http://qb6.2ch.net/test/read.cgi/operate2/1097914397/

そういうところに置いてみるのも面白いかも?
2006/08/24(木) 00:18:03ID:b6jszFiD0?BRZ(7007)
operate2 はアレがあるから切ったような・・・
2006/08/24(木) 00:24:38ID:eVQaOOza0?PLT(12347)
ひろゆきママンの掃除機か!!
2006/08/24(木) 12:25:20ID:Y+EGPfiv0
http://dso.2ch.net/test/read.html/myanmar/1155409133/87n
714root▲ ★
垢版 |
2006/08/25(金) 01:24:08ID:???0?PLT(15700)
>>713
PATH_INFO がデフォルトになったということは、
www2 に置いてある js も、更新が必要なのかしら。
2006/08/25(金) 01:32:12ID:BlMYL2I00
>>714 be.js には影響なしです.subback.html / index.html の方を揃えてもらえば
PATH_INFO 形式デフォルト化は完了ってことで.
716root▲ ★
垢版 |
2006/08/25(金) 01:36:39ID:???0?PLT(15700)
subback.html と index.html ってことは、bbs.cgi ですか。

お手数ですが、dso サーバの bbs.cgi の
UpdateSubback と MakeIndex4PC にある、
if(&IsReadHtml($GB)) なところの JavaScript 部分を、
SunOS さんのほうで、ごにょごにょしていただけると助かります。

問題がなければ、オリジナルに反映しておくです。
2006/08/25(金) 01:49:14ID:BlMYL2I00
>>716 ごにょごにょ完了しますた.
718root▲ ★
垢版 |
2006/08/25(金) 01:56:39ID:???0?PLT(15700)
>>717
どもです。オリジナルに反映し、dso にも入れなおしました。
2006/08/25(金) 01:59:51ID:BlMYL2I00
>>718 乙です.
720root▲ ★
垢版 |
2006/08/25(金) 16:39:25ID:???0?PLT(15700)
そんなわけで「2ちゃんねる」リンクがついたので、
read.html でも対応すると、よいと思うのです。
2006/08/25(金) 16:48:38ID:vlmbfQyP0
read.cgiどころかsubback.htmlやindex.htmlまでJavascriptで生成とは
夢が広がりんぐだな。
2006/08/26(土) 00:15:30ID:j4drswue0
>>720 Done.


ブラウザ振り分けの素案として
http://dso.2ch.net/test/read.html/myanmar/1155409133/89n
というのを考えていたりしますが,新たな情報等があれば修正するということで.
2006/08/26(土) 01:50:29ID:P5UFM7680
レス数によっては、[全部読む]がやっぱり重いね。
[全部読む]でも、一気に表示しないで、だんだんとレス追加みたいな感じのが良いのかな。
続きを読むをクリックすると、レスが追加されてく感じ。

そっちの方がAjaxっぽいし。
2006/08/26(土) 02:05:45ID:j4drswue0
>>723
>一気に表示しないで、だんだんとレス追加みたいな感じのが良いのかな。
>続きを読むをクリックすると、レスが追加されてく感じ。

そういう方がいいという人は,上の方の「1- 101- 201-」とか
下の方の「前100 次100」を利用してもらうということで.
「全部」で全部表示されないというのも,看板に偽りありという
気がしないでもないんで......
「大きなスレで『全部』は重いですよ」というのは JavaScript 版での
注意事項として周知する方向で.
2006/08/26(土) 02:48:42ID:j4drswue0
「全部」をクリックしたら警告が出るようにしてみますた.
(read.js を分離したのでキャッシュクリアとかしないと反映されないかも)
2006/08/26(土) 04:30:46ID:IARsdKVR0
>>725
乙です
「それでもいいですか」ってのがなんか脅しっぽいwww
2006/08/26(土) 05:57:20ID:dQy0+7ra0
>>725
でもこれ毎回出たらうざくないですか?
2006/08/26(土) 07:00:43ID:eQA7LPWP0
>>727
毎回「全部」をクリックする人って少ないんじゃないかな
2006/08/26(土) 07:08:04ID:+VscJeze0
少なくとも専ブラ使わないときは全部を選んでいる
2006/08/26(土) 10:29:37ID:j4drswue0
警告出すのは,レス数が 400 以上またはサイズが 250 kB 以上の場合だけにしますた.
2006/08/26(土) 13:57:27ID:j4drswue0
何か......IE 6 だと a.href を書き換えた場合,新しい href の既読・未読が
リンク色に反映されない模様(書き換える前のリンク色のままになる).
となると,subback.html / index.html でわざわざ↓みたいにしなきゃならんのか......

# IE 7 はどうなんだろう......?

var isIE6 = navigator.userAgent.indexOf("MSIE 6.0") > 0;
for (var i = 0; i < document.links.length; i++)
    if (/^http:\/\/(?:\w+\.)?(?:2ch\.net|bbspink\.com)\/test\/read\.cgi\/?/.test(document.links[i].href)) {
        document.links[i].normalize();
        var data = document.links[i].firstChild.data, isEqual = document.links[i].href == data;
        document.links[i].href = document.links[i].href.replace(/read\.cgi(\/)?/, function(s, slash) { return "read.html" + (slash ? "/" : ""); });
        if (isIE6) {
            document.links[i].firstChild.data = isEqual ? document.links[i].href : data;
            document.links[i].parentNode.replaceChild(document.links[i].cloneNode(true), document.links[i]);
        }
        else if (isEqual)
            document.links[i].firstChild.data = document.links[i].href;
    }
2006/08/26(土) 14:38:07ID:j4drswue0
read.js でも >>731 と同じ問題への対処 done.
733ひろゆき@どうやら管理人 ★
垢版 |
2006/08/27(日) 21:55:05ID:???0?DIA(30718)
うほ。
2006/08/27(日) 22:09:33ID:UhzDUk4SP
うへ。
2006/08/28(月) 00:49:46ID:aw0giLTu0
まぁ,月が変わる頃にはいろんな意味でいろいろ動き出すでしょう......
736動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/28(月) 13:30:57ID:VbslbRUI0
読み込み完了するまでスレの正体がわからないのはどうなんだろう
http://dso.2ch.net/test/read.html/myanmar/1155416372/

あとさ、たまにスレにたくさんレスがついてて流し読みしながらレス書くときに
書き込み欄が一番下にあると参照しながら書けないから
今まではスレをもういっこ別窓で開いてレス書いたりしてたけど
これ導入するんだったら書き込み欄とメッセージは別フレームみたいに出来ないかね
2006/08/28(月) 16:17:50ID:aw0giLTu0
>>736
>読み込み完了するまでスレの正体がわからないのはどうなんだろう

読み込まなきゃわからないのはどうしようもないのでは......と思ったけど

>http://dso.2ch.net/test/read.html/myanmar/1155416372/

これは,ライブな dat が存在しない場合の扱いがいかがなものか,って意味なのかな?
鯖側で動く read.cgi と違って過去ログをあさることはできないので,別途鯖側で
何らかの I/F を用意しない限り,過去ログの存在の有無を知らせることは不可能ですね.
ただ,エラーメッセージをもっと親切な内容にしたらどうか
ってことであれば,いい提案があれば採用する方向で.

しかし......現状ではファイルが存在しない場合一律に
http://www2.2ch.net/live.html に飛ばしてくれるんですが,
XMLHttpRequest の仕様上別鯖には逝けないんでちょっと困った状態に......

IE -> "Unknown" というわけわからんステータス
Firefox -> "302 Found"
Opera -> 一回目は "302 Found" だが,二回目以降 send() の時点で Security violation の例外発生

元々 live.html に飛ばすのは read.cgi を止めた場合の人大杉の
ためのもののはずだと思うんで......せめて dat の場合だけでも普通に
"404 Not Found" を返してくれればもうちょっと扱いやすくなるような......

ErrorDocument 404 http://www2.2ch.net/live.html
<Files *.dat>
    ErrorDocument 404 default
</Files>


>書き込み欄とメッセージは別フレームみたいに出来ないかね

フレームだと,かえって今までと使用感が異なることに違和感を持つ人が
結構出てきそうな気も......ただ,フレームでなく position: fixed;
を用いることにすれば,従来と同じ形態との切り替えも容易なので
採用できそうな気もします.ただ問題は,IE 6 だと position: fixed;
が効かないという(IE 7 はどうなんでしょ?)...... かと言って
onscroll で追いかけて動かすのは船酔いしそうな気持ち悪い動きになるし.
「その機能を使いたい人は IE 6 以外を使って下さい」って形でもいいなら
単純明快にできそうですが.
738ひろゆき@どうやら管理人 ★
垢版 |
2006/08/28(月) 17:44:26ID:???0?DIA(30719)
ライブなdatが存在しない場合は、read.cgiにリダイレクトしちゃうとか。。
2006/08/28(月) 19:10:40ID:iqkqPW7u0
ひろゆきがまともなことを言ったので明日は雨
2006/08/28(月) 19:40:38ID:aw0giLTu0
>>738 そういうのも一案ですが......

・ *.dat の ErrorDocument 404 を DSO プログラムに振る.

・ その DSO プログラムが過去ログを調べ,存在すれば今の read.cgi のように
  最初と最後のレスだけ抜き出して返すなどする.

のようなことをすれば,read.html のみならず雪だるまの read.cgi で
過去ログの存在を認識できない問題もついでに解決できるかも知れない予感......
741ひろゆき@どうやら管理人 ★
垢版 |
2006/08/28(月) 19:48:23ID:???0?DIA(30719)
それをやっちゃうと、結局処理が挟まっちゃうので、
.htmlにしてるメリットが薄れませんか?
2006/08/28(月) 19:50:12ID:4SktNoiI0
スレッドが無かった時だけでしょ。
read.cgiに飛ばすのも、処理挟むので同じじゃん。
2006/08/28(月) 19:53:50ID:aw0giLTu0
>>741 >>742 の通りで,dat が存在しない場合(普通なら "404 Not Found"
が返る場合)のみ DSO プログラムに振られるってことで.
744ひろゆき@どうやら管理人 ★
垢版 |
2006/08/28(月) 20:59:18ID:???0?DIA(30719)
おぉ、、DSOすげー。
んでは、それでいいと思いますー。
2006/08/28(月) 21:28:24ID:TOdGXpA90?BRZ(6666)
(´-`).。oO(「Apacheすげー」だとおも♪)
2006/08/28(月) 22:57:28ID:4I6xnJUY0
IISとかでも不可能ではない
2006/08/28(月) 23:21:08ID:ps3XaamL0
コンピューターすげー
2006/08/29(火) 06:02:45ID:xqoF9LwE0
宇宙すげー
2006/08/29(火) 15:52:11ID:ff/315++0
pastdat.so ってのを作って,.htaccess に

<Files *.dat>
    ErrorDocument 404 /test/pastdat.so
</Files>

って入れますた.こんな感じで......

http://dso.2ch.net/myanmar/dat/1155416372.dat
http://dso.2ch.net/myanmar/dat/1000000000.dat

http://dso.2ch.net/test/read.html/myanmar/1155416372/
http://dso.2ch.net/test/read.html/myanmar/1000000000/

過去ログの場所は非公開っぽいので,pastdat.c も非公開ってことで.
# とりあえず /var/tmp に突っ込んであります.
750root▲ ★
垢版 |
2006/08/29(火) 17:52:27ID:???0?PLT(15702)
>>749
/var/tmp の下は激しくいまいちなので、
home directory 配下のある場所に mv しました。

ありかは、ちとお取り込み中が終わってから。
(見ればわかるといううわさも)
2006/08/29(火) 23:07:47ID:ff/315++0
>>750 場所確認しますた.

# 実は,個人環境では /var/tmp が全然 temporary じゃない状態になってたりします......w
2006/08/30(水) 01:28:42ID:WivvJ1bL0
専ブラの話だけど、スレが無い時のステータスコードを302で決めちゃってるのが
多いのかしらね。
以前も、新仕様鯖だったかで、404になるのに対応できないブラが右往左往
していたっけね。
(ルート付きを始めた時だっけ?)
2006/08/30(水) 05:33:49ID:sPlw/x6z0
302は変えないほうがいいと思う
2006/08/30(水) 09:20:25ID:cTJmxtft0
>>752-753 悪影響が出る専ブラには,User-Agent で判定して 302 返すようにしますかね......

XMLHttpRequest は外部鯖向け 302 との相性が悪いってのもあるし,
仮にそれに対応させたとしても,過去ログの存在を確認するために別 URL で
改めてアクセスするとなると HTTP リクエスト数が増加する方向に働くことになるんで,
JavaScript 版やる上では ErrorDocument で pastdat.so に振り向けるやり方の方が
スマートかなって気もしないではないんで......



ついでに●ログインとかもやってみようかと思ったけど,それやるには
mod_ssl と mod_proxy が使える 2ch.net ドメインの鯖もないとダメポな予感......
2006/08/30(水) 14:08:23ID:CB3QYUMV0
302はgetResponseHeader('Location')した後location.hrefなりwindow.openなりすればいいんじゃね?
2006/08/30(水) 17:18:32ID:cTJmxtft0
>>755 というか,302 のジャンプ先にある live.html を表示しても仕方ないんで......
要は read.cgi と同様に,ライブな dat が存在しない場合に過去ログの有無を調べ,
過去ログがある場合に最初と最後のレスだけ抜き出して表示する,ってのが目的なんで.

とりあえず ^(Mozilla|Opera|Lynx|Wget)/ のような感じの,専ブラと関係なさそうな
User-Agent の場合だけ 404 等のを返し,それ以外は 302 を返す形にしてみますた.
2006/08/30(水) 18:09:14ID:sPlw/x6z0
live.html自体は人大杉だけど302は前からそうなっているからなあ
今もバナーでてるけど広告的な意味もあるのかな?

>●ログイン
2chの鯖を介さずにブラウザ側で直接ログインできるならいいけど
そうじゃないならちょっと・・・
2006/08/30(水) 18:22:01ID:+7rDruHP0
pastdat.soみたいな、専用モジュールの追加もアリという前提ならば
将来的には.datの必要部分のみ取得というモジュールというのも視野に入れても良さそうな感じ。
昔のread.cgiのrawmodeみたいに、レス番やlxxで。

といっても、'\n'の検出を毎回鯖がやらなきゃいかんので
ある程度の数の.datの行頭探索結果はメモリ上に保持しておいて、とか
それ以前に、行頭はbbsdで完璧に把握できるのだから、bbsdと連携して、とか
read.cgiもbbsdと交信して行頭情報を取得したり、とか
などの話にも発展させられそうな。

TCPでモジュールとbbsdが交信するようにすれば
大きいデータ(.dat本体とか)も扱えるだろうし
接続しっぱなし(SO_KEEPALIVEであぼん検出)みたいにすれば
JumboFrameも使えるし、負荷的にはUDPと大差ないと思うんですがどうでしょうね。
(多数のコネクションを効率的に扱うサーバーの造りは、UDPよりずっと大変でしょうが)
2006/08/30(水) 19:16:13ID:cTJmxtft0
>>757 html ならともかく dat を直接ブラウザで表示する人はあまりいないだろうと
いうことと,専ブラや read.html のようなものが dat を取得するのは
直接表示するためではないので,dat へのアクセスを別の場所に飛ばすのは
広告としてもあまり意味がないような気がします.ともあれ,>>744
Go サインは頂いたと思いますので,とりあえずこの路線で.

●ログインは,pastdat.so の機能を拡張すればシームレスな過去ログ表示も
可能になりそうとちょっと考えたんですが,認証サーバは 2ch.net とは
別ドメインにあるので,>>754 でも述べたように認証サーバへの橋渡しをする
プロクシ鯖を別途用意しなきゃダメポなようですね.


>>758 pastdat.so は,ErrorDocument 404 で振られた場合だけ呼ばれるので......

あと上の方でも話がありましたが,部分取得しつつキャッシュを有効活用するなら
ブラウザが備えてるのとは異なるキャッシュ機構がないとうまく機能しないので,
ローカルストレージに直接アクセスできない限り困難,つまり
JavaScript でやってる限りは困難じゃないかと.

ちなみに,bbsd は subject.txt のデータはオンメモリで管理してますが,
dat は単純に O_APPEND モードで追記してるだけなのでオンメモリでは管理してません.
2006/08/30(水) 20:04:44ID:+7rDruHP0
「差分取得」ではなく「部分取得」のつもりだったのですが。
、、と、もしかして、
既に現状のread.htmlが、リクエストのURIを解析して
.dat全体の中から必要な部分だけを転送するようになっているのですかね。

bbsdに関しては、現在は管理していないのはわかりますが
「何バイト書き込むか」を確実に把握出来るので
初回はともかく(再起動に備えて別ファイル等も必要でしょうが)
行頭情報を常時保持しても大きな負担にはならないとの考えからです。
2006/08/30(水) 20:14:48ID:+7rDruHP0
あ、ごめんなさい、補足。

つまり、「必要個所だけを転送する」ためには、行頭情報が必要で
可能であればそれをキャッシュしておきたい、という考えがあるのですが、
そのキャッシュをbbsdと別に持つとすると、毎回stat()をかけなければいけない
というのがあります。
fstat()ならまだしも、stat()はアクセス権チェック等もあることから
「可能ならば省略したい処理」になるのではないかと。
で、bbsdならば、更新確認のstat()が不要なままで、
確実な行頭情報を得られるということですね。
2006/08/30(水) 20:33:40ID:cTJmxtft0
>>760-761 いや,現状では dat は単純に全体を取得してます.
差分取得にしろ部分取得にしろ,キャッシュの有効活用との
両立は困難だと思うんで.例えば細切れな dat の断片を
いくつも管理するとか複雑な処理をして両立しようとしても,
その断片ごとに(If-Modified-Since 付きではあっても)
HTTP リクエストが多数発生するとかになって,
果たして苦労する割に得るものがあるだろうか,と......

それから,書き込みとの関連の薄い処理まで bbsd にやらせることを
考えるぐらいなら,フロント側で mod_cache を有効化するなどを
やる方が先決じゃないかと.bbsd の仕事を増やすというのは
すなわちバックエンド側の仕事を増やすということにもなりますし.
2006/08/30(水) 20:37:46ID:WivvJ1bL0
>756
逆に、Monazilla/1.00 だけ302の方がすっきりしません?
2006/08/30(水) 20:43:09ID:wBkw7Ild0
>>752-754
そんなのは専用ブラウザが是正されるべきだと思います。
2006/08/30(水) 20:50:36ID:cTJmxtft0
>>763 専ブラは全部 Monazilla/* っていう User-Agent なんでしょうか?
それなら確かにその方がすっきりしますが......

>>764 個人的には,dat が存在しないのは 302 の場合だけという決めうちは
手抜きだなぁ,そういう決めうちプログラムの側が是正されるべきだよなぁ,
と確かに思うんですが,かといって経過措置も何も考えずにやると
いろいろ混乱を来しそうで......
2006/08/30(水) 21:30:53ID:yYrD6tu00
てか、1.00とか適当なことを言ってないで有効活用すればいいじゃん。
1.1とか2.0とか。
2006/08/30(水) 21:31:42ID:3/7Hf8HC0?BRZ(6666)
404より410の方が妥当な悪寒。。。
2006/08/30(水) 21:32:06ID:WivvJ1bL0
> User-Agent
通常のdat読みでは義務ではありませんが、以前にはMonazilla/1.00だけが
dat読みを許されていたこともあり、現在でも非常に強く推奨されており、
実際、ほとんど(おそらく全て)がそうなっています。
ちなみに、●使用ではUAが厳しく指定されています。
2006/08/30(水) 22:07:02ID:ZcVDdovvP
>>768
L〜もG〜もW〜もMonazillaじゃないぞ
2006/08/30(水) 22:08:51ID:cTJmxtft0
>>767 多くのケースでそうかも知れませんが,スレ移動で今までなかった dat が出現するとか,
dat 落ちしたのが復活するとか,ということもまれにない訳でもないかと......

>>768 なるほど......ってことで,Monazilla/ の場合だけ 302 にしますた.
2006/08/30(水) 22:11:24ID:cTJmxtft0
>>769 ありゃ,すれ違っちゃった......となると,その L?, G?, W?
ってブラウザがどういう挙動を示すかが問題か......
2006/08/30(水) 22:18:45ID:sPlw/x6z0
dat落ちについてはLocationがおかしいだけで302は妥当なのかも
LocationはMUSTじゃないからあえて含めないで
本文にdat落ちのメッセージ入れてみるとか
(どういう動作になるかわからんけど)
2006/08/30(水) 22:56:08ID:WivvJ1bL0
Live2chもギコナビもぎこはにゃんもMonazillaだし、W?シラネ、Mac?モットシラネ。

既に言われているように、本来は専ブラ側が対応するものなので、
細かい所まで気にしなくても良いんじゃないですかね。
302決め撃ちばかりとも限らないし。
2006/08/30(水) 23:34:09ID:3/7Hf8HC0?BRZ(6666)
レスポンスを細分化することは可能であっても(3**返すとか4**返すとか)それに見合った負荷対策は?
と考えるとでんでんメリットが少ない気もするですね(苦笑)

*.datの取得に関しては「UAでMonazillaを返してこないのは、専用ブラジャー以外」と決め込んでしまって良いんじゃないかな。
・・・を前提にしつつHTTP仕様にも沿って欲しいよなぁとかとか(どっちやねん)
2006/08/30(水) 23:49:20ID:WivvJ1bL0
ああそうか、Monazillaは302にするということは、pastdat.soを使わないということであり、
サーバ側の処理を省くことになる、という2ch側の理由もありえるのか。
2006/08/31(木) 00:42:59ID:Eb5pnMwG0
よく考えたらread.htmlでアクセスするのはdat-utf8とdatxだから
そっちだけ変えればいいんでは?
2006/08/31(木) 01:31:30ID:deFQfP2p0
>>772
>dat落ちについてはLocationがおかしいだけで302は妥当なのかも

これは一理あるかも.ただ,元々 dat がないケースだと 302 では
本来おかしいですし,404 等の方がふさわしいし扱いやすいと
いうところで,今回やってる方針のメリットはあるかなぁと......

>>773-774 とりあえず,Monazilla だけ 302 にする,ということで様子見の方向で.

>>775 というか,Monazilla の判定は pastdat.so 内でやってます.
ErrorDocument ディレクティブでは User-Agent での条件分岐とかできませんし,
仮にできても .htaccess のディレクティブを毎リクエストごとにパースして
条件分岐するよりは pastdat.so 内で分岐する方が軽そうな気がしますし
(*.so は Apache モジュールでの処理とほぼ同等ですし).

>>776 この件だけ考えればそうかも知れませんが,現状雪だるま鯖の
read.cgi が過去ログの存在を認識できない問題への対処というのも
視野に入れてるんで......
2006/08/31(木) 01:51:06ID:kQJMQQfh0
> Monazilla の判定は pastdat.so 内でやってます.
そなんすかー。
2ch側が積極対応する口実を見っけたと思ったのにー。

ああでも、過去ログの情報でdat開くよりは、単に302だけの方が軽いかな、
とかなんとかまだこだわってみる。
2006/08/31(木) 02:14:45ID:deFQfP2p0
>>778 まぁ,Monazilla 以外の User-Agent の専ブラで悪影響が出るのがあったら
その時にまた対処するってことで......
2006/09/02(土) 12:34:59ID:hPP8wKRg0
>>731 に対応ブラウザの判定を入れる(ただし dso では判定にかかわらず
全部 read.html に振る)とこうなるかな.IE 4 やネスケ 4 では
try / catch でエラーになるだろうけど,エラーでスクリプトが止まって
URL 書き換えも実行されないなら,それはそれでよしってことでw
----------------------------------------------------------------------
try {
    if (/MSIE (?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko\/|Opera\/(?:[89]|\d{2,})\D/.test(navigator.userAgent)
        || location.hostname == "dso.2ch.net") {
        var isIE6 = navigator.userAgent.indexOf("MSIE 6.0") > 0;
        for (var i = 0; i < document.links.length; i++)
            if (/^http:\/\/(?:\w+\.)?(?:2ch\.net|bbspink\.com)\/test\/read\.cgi\/?/.test(document.links[i].href)) {
                document.links[i].normalize();
                var data = document.links[i].firstChild.data, isEqual = document.links[i].href == data;
                document.links[i].href = document.links[i].href.replace(/read\.cgi(\/)?/, function(s, slash) { return "read.html" + (slash ? "/" : ""); });
                if (isIE6) {
                    document.links[i].firstChild.data = isEqual ? document.links[i].href : data;
                    document.links[i].parentNode.replaceChild(document.links[i].cloneNode(true), document.links[i]);
                }
                else if (isEqual)
                    document.links[i].firstChild.data = document.links[i].href;
            }
    }
} catch(e) {}
----------------------------------------------------------------------
さらに,検索エンジン等外部リンクから飛んできた場合に対応ブラウザなら
read.html に振るとするとこうかな.dso では %{HTTP_USER_AGENT} の行は
コメントアウトで.
----------------------------------------------------------------------
RewriteCond %{HTTP_USER_AGENT} MSIE\s(?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko/|Opera/(?:[89]|\d{2,})\D
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !^http://(?:\w+\.)?(?:2ch\.net|bbspink\.com)/(?:\w+/(?:|(?:subback|index)\.html)$|test/read\.(?:html|cgi)[#/]?)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1 [R]
----------------------------------------------------------------------
781ひろゆき@どうやら管理人 ★
垢版 |
2006/09/05(火) 05:12:07ID:???0?DIA(33396)
http://www.lustre.org/
これってどうなんすかねー。
2006/09/05(火) 11:21:47ID:h9IMlQTY0
>>781 クラスタファイルシステムですか.雪だるまあたりで有用かも知れませんね.
# とはいえ Linux 用のようですが......





http://aa5.2ch.net/test/read.cgi/nanmin/1156950721/576-625n
もし read.html でも●ログインを実装するなら似たような感じで.もっとも,
認証サーバへの橋渡しだけしてやればあとはクライアント側で処理できるでしょうけど.

あと,今更感はありますが...... myanmar, yangon の head.txt で
「JavaScript 版 read.html 実験中」とか入れといてもいいのかも.
783ひろゆき@どうやら管理人 ★
垢版 |
2006/09/05(火) 13:51:45ID:???0?DIA(33396)
blackgoatとか、read.htmlとかで共有datスペースを作ったほうが
効率いいのかなぁ、、とか思ったです。
2006/09/05(火) 16:03:05ID:h9IMlQTY0
>>783 そういうことですか.アイデア的には面白そうですが,
現在独立してる各サーバを dat スペースを共有する形に再編するのは
結構大がかりな作業になりそうなのと,以前雪だるまで NFS 使ってた
時のように虫踏んで苦しむことにならないか,ってあたりが課題かもですね.
FreeBSD だと GEOM gate とか使うことになるのかな......?
785root▲ ★
垢版 |
2006/09/05(火) 16:29:51ID:???0?PLT(15755)
>>781-783
いろいろ、おもしろそうすね。

速攻でできるわけではないですが、そのへんの続きはこっち↓あたりで。

2ch特化型サーバ・ロケーション構築作戦 Part23
http://qb5.2ch.net/test/read.cgi/operate/1153650861/
786root▲ ★
垢版 |
2006/09/05(火) 16:31:05ID:???0?PLT(15755)
>>784
そのへんは、、、。send-pr しまくりかしら。

とりあえず hrs さんにしかられない方向で。
787動け動けウゴウゴ2ちゃんねる
垢版 |
2006/09/14(木) 19:30:15ID:6gFSb2eF0
早くVIPにこれ導入してくれよ
2006/09/14(木) 20:10:45ID:EjiEFSF40
まだ出来てないよ
2006/09/14(木) 23:20:04ID:zBxU9b520
時代の先を目指しているようで
実は時代と逆行しているような気がするのは気のせいだろうか。
でも出来上がりは楽しみだな。
2006/09/14(木) 23:45:05ID:r7avOwLH0
まぁ,一応動く形になってるという意味ではできてないというわけでもないとは思いますが,
何かきっかけがあれば動き出すかも,今はそのきっかけ待ちという状態かな......
2006/09/14(木) 23:48:24ID:JYPx7xTAP
待ってるだけじゃだめだよ
2006/09/14(木) 23:56:31ID:r7avOwLH0
まぁ,dso 以外の鯖でも動かすには他の鯖にこれを入れられる人が動いてくれることも前提なんで......
2006/09/16(土) 01:17:58ID:1caBuGM70
一応,必要な手順をまとめておこう......

・ read.js は www2 に入れる.ついでに,be.js も若干変更してるので,それも更新.
・ read.html は各鯖に入れる(雪だるまではフロント側).
・ subback.html, index.html の JavaScript 部分を >>780 前半のように変更 (bbs.cgi).
・ httpd.conf か .htaccess に >>780 後半の設定を入れる.
・ pastdat.so も各鯖に入れる(雪だるまではバック側).
・ pastdat.so 用設定として以下のを httpd.conf か .htaccess に入れる.

<Files *.dat>
    ErrorDocument 404 /test/pastdat.so
</Files>
# <Files pastdat.so>...</Files>: スタンドアローンサーバのみの設定.
# リバースプロクシバックエンド(雪だるま)では入れない.
<Files pastdat.so>
    AddDefaultCharset Shift_JIS
    Header always append Cache-Control max-age=5
</Files>
2006/09/16(土) 01:20:14ID:1caBuGM70
# httpd 用設定まとめ

LoadModule charset_lite_module libexec/apache2/mod_charset_lite.so

<Location /*/datx/*.dat>
    AddDefaultCharset Shift_JIS
    Header always append Cache-Control max-age=5
</Location>
<Location /*/dat-utf8/*.dat>
    SetOutputFilter XLATEOUT
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
    CharsetOptions NoImplicitAdd IgnoreIlSeq
    AddDefaultCharset UTF-8
    Header always append Cache-Control max-age=5
</Location>
<Location /test/bbs-utf8.cgi>
    SetInputFilter XLATEIN
    CharsetSourceEnc CP932
    CharsetDefault UTF-8
    CharsetOptions NoImplicitAdd IgnoreIlSeq
</Location>

<VirtualHost ...>
    # ServerName xxx.2ch.net のところ
    AliasMatch ^/(\w+)/dat(?:x|-utf8)/(\d+\.dat)$ /home/ch2xxx/public_html/$1/dat/$2
    # 雪だるまでは上記 AliasMatch の代わりに RewriteRule で.
    # RewriteRule ^/(\w+)/dat(?:x|-utf8)/(\d+\.dat)$ http://xxxb.2ch.net/$1/dat/$2 [P]
    Alias /test/bbs-utf8.cgi /home/ch2xxx/public_html/test/bbs.cgi
</VirtualHost>

# ↑までは httpd.conf で設定.
# ↓以降は httpd.conf / .htaccess どちらでも可.

RewriteCond %{HTTP_USER_AGENT} MSIE\s(?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko/|Opera/(?:[89]|\d{2,})\D
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !^http://(?:\w+\.)?(?:2ch\.net|bbspink\.com)/(?:\w+/(?:|(?:subback|index)\.html)$|test/read\.(?:html|cgi)[#/]?)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1 [R]

# ↑までは,雪だるまではフロント側で設定.
# ↓以降は,雪だるまではバック側で設定.

<Files *.dat>
    ErrorDocument 404 /test/pastdat.so
</Files>
# <Files pastdat.so>...</Files>: スタンドアロンサーバのみの設定.
# リバースプロクシバックエンド(雪だるま)では入れない.
<Files pastdat.so>
    AddDefaultCharset Shift_JIS
    Header always append Cache-Control max-age=5
</Files>
2006/09/16(土) 08:11:45ID:9F9uonu60
そろそろexがつくサーバーで試してみましょうぜ
2006/09/16(土) 08:15:35ID:A54PmaKA0
よしex9でよろ
2006/09/16(土) 17:28:37ID:0lRjjf12P
ex14キボン
2006/09/16(土) 17:35:48ID:C/O1vIad0
ex18で
2006/09/17(日) 09:57:31ID:5zbObfvc0
ex18
2006/09/18(月) 22:15:54ID:+EKYPSwF0
ひろゆき30歳の誕生日に一斉導入しよう
2006/09/18(月) 22:31:17ID:SHW5sgL8P
19才だよ、永遠に
2006/09/19(火) 03:32:52ID:bYNii1ZZ0
ex16で。
2006/09/19(火) 05:43:15ID:13d6KsrZ0
ex11
2006/09/19(火) 10:18:00ID:XsGJWZje0
ex全部でいいじゃん
2006/09/20(水) 11:44:03ID:UGxrH2VI0?BRZ(3570)
あえてtmp5復活
2006/09/20(水) 17:31:09ID:z7QiX5SC0
そこでqb5
2006/09/20(水) 17:51:27ID:Pa/29gUZ0
本命 ex16
対抗 ex11,tmp5
大穴 qb6
?
2006/09/21(木) 06:16:26ID:GJ8CDtb/0
ex 系もいいですが,さらにそれ以外も付け加えるとすれば,read.cgi が
止められてる鯖とか LA が上昇して人大杉になりやすい鯖とかもですかね.
そのあたりは,鯖の状況も見ながらってことになるでしょうけど.
あと,BE 板がある etc4 とかも...... be.js には旧 BE 板の機能継承という
側面もありますし,さらに dso と同一鯖なので面倒見やすいということも.


それと,今すぐじゃなくてもいいのかも知れませんが,今後の検討課題としては

・ [PR]〜[PR]
・ 関連キーワード

ってのもありますが,これは >>266 のように JavaScript 変数として
渡してもらう形にすればいいかと.いわゆる JSON ってやつかな.
2006/09/23(土) 21:15:23ID:g6peBECn0?BRZ(3570)
>>808
>read.cgi が止められてる鯖

2chplusとかは如何
2006/10/30(月) 01:38:35ID:GHYcjzZR0
 
2006/11/02(木) 11:18:26ID:j3v9PXo60
そういえば、過去ログのようなhtmlファイルを最初から作っていく事で
read.cgiを使わなくする計画とかもあったよね。大分前に。
812aasdasd
垢版 |
2006/11/04(土) 13:22:00ID:eEKXms2N0
asda dawefhawliufh lawg agr awg a
2006/11/06(月) 18:22:55ID:EO1AtBHz0
ところで、cgiをphp化するとかは考えてないとか?
2006/11/06(月) 18:24:49ID:osQQTqEk0
>>813
read.cgiはcgiじゃないんで
2006/11/06(月) 18:26:22ID:1ah8Vbtu0
ApacheのDSOだったりもしますしね
2006/11/06(月) 18:40:12ID:4ce9bvrW0
既にPHPに変えたところでパフォーマンスダウンにしかならないところまで登りつめてるんだよな。
read.cgiってすげーよな。UNIX板ありがとうなんて言ってた頃のあれの面影も残ってねぇw
2006/11/06(月) 19:45:49ID:/RmElgxW0
cgiだった頃のソース放出したりすると差し障りあるのかな?
それがC言語版なんかだったりすると互換板的にスゲェ需要あるんじゃ。
2006/11/06(月) 20:21:12ID:6HE/osbR0?BRZ(6667)
Common Gateway Interface
言語に依らないのですー♪
2006/11/06(月) 21:52:25ID:UgzLq8If0
DSOはCGIに含まれるの?
2006/11/06(月) 22:09:34ID:6HE/osbR0?BRZ(6667)
>>819
いやあのだから、、、(照)
ttp://ja.wikipedia.org/wiki/Common_Gateway_Interface
この辺とか熟読♪
2006/11/06(月) 22:58:35ID:UgzLq8If0
「DSOが」
ウェブサーバの一部なのか、ウェブサーバの外部のプログラムなのか、と。
2006/11/06(月) 23:49:37ID:6HE/osbR0?BRZ(6667)
>>821
でしたらこちらをどぞー♪
ttp://httpd.apache.org/docs/2.2/ja/dso.html

CGIとは違う方向に持って行くんだもん(照)
2006/11/07(火) 00:34:58ID:UEyc4pMfP
FastCGI化はしないの?
2006/11/07(火) 00:58:24ID:nPIAlQDB0
このスレは静的なHTMLでread.cgiを置き換えるスレですから
825動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/09(木) 11:54:26ID:DGHujHbV0
>>1
プログラム板でやれ
826動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/09(木) 13:35:16ID:lhyl8j7NO
動的にpdfを生成すればいいんじゃね?
2006/11/09(木) 19:14:25ID:14UWU7Ik0
Flashでやってみるのもおもし(ry
2006/11/09(木) 20:27:17ID:SoXaakWp0
そこはActiv(ry
2006/11/09(木) 23:15:35ID:Yfq8LBnP0
いっそレスの数だけサーバ立てようぜ
超分散処理最強
2006/11/10(金) 09:23:06ID:43TJcR6c0
サーバサイドで動かす read.cgi の話題は↓で.
http://qb5.2ch.net/test/read.cgi/operate/1105909861/l50

ともあれ,IE 7 リリースにより >>582-585 が徐々に進むと.

んでもって,dso 以外に入れるってところで足踏みしてるわけですが,
VIP の移転先新鯖でこの機会に入れるかどうか,ってとこですかね.
2006/11/11(土) 00:03:12ID:4JoUbKlG0
いれていれて
2006/11/11(土) 00:22:50ID:Ni0k+qrf0
そういやFlashで2chブラウザってありそうでないような
2006/11/11(土) 01:07:12ID:3C6Dxl2y0
携帯限定だけど、Andyってのがあったはず。
2006/11/15(水) 21:06:21ID:SKVUPSxV0
IEでスレッドの内容を保存できないという問題は、
saveSnapshotビヘイビアを使って、取得したdatの内容を
退避しておけば解決できるかもしれません。

<textarea id="hiddencache" style="behavior:url(#default#saveSnapshot);display:none;">
(IEでページを保存する時に、ここの内容はそのまま保持される)
</textarea>


テキスト欄にステージデータをコピペして保存してから開くと
プレイ可能なファイルができてる、不思議なサンプル。(テキスト欄がSaveSnapshotになってる)
http://makimo.to:81/ldm/lrc.html
2006/11/15(水) 22:56:04ID:PWj5HIW10
>>834 そういうのがあるんですか.ただ,ローカルファイルへの保存に関しては
例えば Firefox の完全モードでの保存だと HTML の構造自体を変えてしまうだとか,
オンラインでの表示よりもいろいろ考慮しなければならないことも増えてくるので,
とりあえずは従来版 read.cgi の方でやってもらうということで......
836root▲ ★
垢版 |
2006/11/15(水) 23:05:13ID:???0
で、移動。

2ch特化型サーバ・ロケーション構築作戦 Part23
http://qb5.2ch.net/test/read.cgi/operate/1153650861/715

が手順ですか。

# ちと、ふろへ。
2006/11/16(木) 00:12:34ID:dGPoc1m+0
これの導入をひろゆきさんへの誕生日プレゼントということで......
2006/11/16(木) 00:22:06ID:rgC5HKwd0
わーいわーい
839root▲ ★
垢版 |
2006/11/16(木) 00:24:58ID:???0
- read.js / be.js の確認・同期 (www2b => www2f[1-5](= www)) … done? by 管理人
- SunOS さんパッチバージョンの mod_charset_lite を有効にする @ life7 … やりました
- test/pastdat.so を入れる @ life7 … done by SunOS さん
- httpd.conf を上記のとおり更新して、更新内容を有効にする @ life7 … やりました
- bbs.cgi の該当箇所をコメントじゃなくす … まだ
840root▲ ★
垢版 |
2006/11/16(木) 00:26:20ID:???0
あと、>>839 に加えて、

- test/read.html を入れる @ life7 … done by SunOS さん

かな。
841root▲ ★
垢版 |
2006/11/16(木) 00:28:26ID:???0
うまく動いているのかな。

うまく動いているなら、
明日早いので、今日はそろそろ寝る時間かも。
2006/11/16(木) 00:29:24ID:dGPoc1m+0
>>839 乙です.www2 は手動での同期が必要な模様.

http://www2.2ch.net/snow/read.js
Last-Modified: Tue, 14 Nov 2006 07:13:22 GMT
Content-Length: 45047
http://www2b.2ch.net/snow/read.js
Last-Modified: Tue, 14 Nov 2006 20:21:13 GMT
Content-Length: 45101
843root▲ ★
垢版 |
2006/11/16(木) 00:31:58ID:???0
>>842
できたはず。

あとは bbs.cgi の有効化だけですか。
これは、様子を見ながらでも OK かなと。

ちと、今日はこのへんで。
844root▲ ★
垢版 |
2006/11/16(木) 00:33:03ID:???0
あ、あと read.html の動作確認がありますね。
有効化はそのあとかなと。

すみませんが、動作確認は各位におまかせいたしますです。
read.html を直接使えば、今現在使えているはず。
845root▲ ★
垢版 |
2006/11/16(木) 00:33:22ID:???0
>>844
× おまかせ
○ おながい
846root▲ ★
垢版 |
2006/11/16(木) 00:42:11ID:???0
www2 の同期をしたら、
read.html がうまく動かなくなった予感。
847root▲ ★
垢版 |
2006/11/16(木) 00:45:56ID:???0
ううむ、ちと私ではわからないですね。

今日は私が、時間切れの予感。すみませんがこのへんで。
848root▲ ★
垢版 |
2006/11/16(木) 00:48:17ID:???0
む、ブラウザを再起動したりいろいろやっていたら見えるようになった。なんでだろう。
いずれにせよ、今日の私の作業はここまでで。
2006/11/16(木) 00:49:24ID:dGPoc1m+0
>>843-847 乙です.お休みなさい.

read.js はこちらのミスですた.すみません......
なんか www2 の入れ方や同期のさせ方わかったっぽいので,こちらで修正版入れますた.
キャッシュクリアとかして表示させればうまくいくかと......

http://life7.2ch.net/test/read.html/lifesaloon/1162569075/l50
2006/11/16(木) 00:53:30ID:QFpEhBwl0
全部や50をクリックしたときにはdatを取得しなおしてるんだっけ?
2006/11/16(木) 00:56:48ID:dGPoc1m+0
>>850 PATH_INFO 形式では別ページに遷移する形になるので
HTTP リクエストが発生しますね(更新されてなければ 304 が返ります).
location.hash 形式では既存のデータをそのまま利用しますが,
現状ではユーザの利便性を優先して PATH_INFO 形式がデフォルトです.
2006/11/16(木) 01:06:16ID:dGPoc1m+0
さて,bbs.cgi 更新してみますかね @life7
2006/11/16(木) 01:12:03ID:dGPoc1m+0
qb5 と life7 の bbs.cgi 更新 done
さてさて......
2006/11/16(木) 01:15:58ID:PGXoY5EL0
http://pv.40.kg/
じっくり観察でも
2006/11/16(木) 01:31:24ID:0R8/fZpg0
...気が付かないね
2006/11/16(木) 01:36:20ID:XcxyWfAH0
壷は知らんけど、専ブラ知らないでIE使ってる人はそんなこと気にしないような気がする
read.htmlは>>854 だとどこに集計されるのかしら?
2006/11/16(木) 01:40:41ID:dGPoc1m+0
外側の read.html が ".html" で内側の *.dat が ".dat" かな<pv.40.kg

こっちも観察......
http://mumumu.mu/mrtg/mrtg-rrd.cgi/load/life7load.html
http://mumumu.mu/mrtg/mrtg-rrd.cgi/read/life7readdat.html
http://mumumu.mu/mrtg/mrtg-rrd.cgi/access/life7access.html
2006/11/16(木) 07:29:07ID:UdZhrCoZ0
>>835
例えば、hiddencacheが空白だった場合は通常の動作をし、
hiddencacheにデータがあれば保存済みファイルと判断して
そちらから読むという感じです。
IEで保存した後は他のブラウザで開いても読める(はず)という利点もあります。

ただ、IEの仕様変更でいきなり使えなくなったりする怖さもあるので、
やっぱりread.cgiを使ってもらうのが確実ですね。
2006/11/16(木) 08:01:25ID:cIjdzzZT0
通常がJAVA表示で表示されない場合はcgiに誘導は?
2006/11/16(木) 09:16:20ID:dGPoc1m+0
特に苦情等が押し寄せてないことからすると,特段トラブル等はないということでいいのかな.
ただ,統計見ても read.cgi 呼び出し数にもあまり大きな変化がないような......
JavaScript 切ってたりブックマークから直接 read.cgi 呼び出したりしてるユーザが多いってことかな......

あと,デフォルトでは RewriteEngine on は入ってないんですね.
RewriteCond / RewriteRule の部分が効いてない悪寒(その部分はぐぐる等
外部リンクから read.cgi が呼ばれた場合 read.html に飛ばす設定).
2006/11/16(木) 10:06:39ID:ivmWNjSq0
トラブルが無くて期待はずれとか書くと怒られるかな。
862root▲ ★
垢版 |
2006/11/16(木) 12:15:17ID:???0
>>860
RewriteEngine On にしてみた。@ life7
2006/11/16(木) 12:51:41ID:WThXHxR60
ではそろそろ全板に
864動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/16(木) 13:05:15ID:j2jIwDH6O
全板にやる前に、すぐ苦情を言って来る板にいれた方が。
2006/11/16(木) 13:22:15ID:3qixsCUp0
トラブルってここに書けばいいの?
2006/11/16(木) 13:23:12ID:XcxyWfAH0
read.cgi 微減
html dat 微増
その他 激増
Total 2割くらい増

その他ってなんじゃらほい
2006/11/16(木) 13:26:39ID:kPb8TSny0
index.jsとread.jsじゃね?
868root▲ ★
垢版 |
2006/11/16(木) 13:30:42ID:???0
/dat-utf8/ だと count していなかったのを直した。
http://mumumu.mu/mrtg/mrtg-rrd.cgi/read/life7readdat.html
869root▲ ★
垢版 |
2006/11/16(木) 13:59:24ID:???0
bbs-utf8.cgi だと count していなかったのを直した。
http://mumumu.mu/mrtg/mrtg-rrd.cgi/read/life7bbs.html
2006/11/16(木) 14:35:45ID:dGPoc1m+0
>>861 まぁ,良くも悪くも静かで拍子抜けって感じかもw

>>862 乙です

>>863 まぁ,大きな問題はなさそうですね.
ただ,右上の [PR]?[PR] は要対応かも(後述).

>>864 元気の良さそうな板のあるところとかですかね.

>>865 とりあえず,そうですね.

>>866 今まで存在しなかった URL (datx, dat-utf8, bbs-utf8.cgi) なのかも......
pv.40.kg がどういう形で集計してるのかよくわかりませんが......

>>867 それがあるのは www2 です.

>>868-869 乙です.dat のは /datx/ もありますね.



で [PR]?[PR] のところですが,例えば www2 あたりに
----------------------------------------------------------------------
var PR = {href:"http://hogehoge.example.com/";, text:"ほげほげショップ"};
----------------------------------------------------------------------
のような内容の .js ファイルを置いてもらって,
それを読み込んで表示する形にするといいのかも.
871root▲ ★
垢版 |
2006/11/16(木) 14:44:03ID:???0?PLT(20000)
>>870
datx/ もカウントするようにしました。
PR のところは、管理人も交えてというかんじですか。

# ちと、たぶん夜までオフライン。
2006/11/16(木) 14:54:39ID:dGPoc1m+0
>>871 乙です.[PR] のはそうですね.


そういえば >>457-458 の問題があったのも思い出しますた......

life7% perl -e'print "\x81\x60";' | iconv -f cp932 -t utf-8 | iconv -f utf-8 -t ucs-2be | od -txC
0000000 30 1c
0000002

ってことで,libiconv をパッチ込みで作り直し (>>478-479)
ってのもお手数ですがおながいします>むむむさん
# 致命的な問題ではないので,ゆっくりでいいです.
873sage
垢版 |
2006/11/16(木) 17:08:02ID:AJV8X8Vo0
http://life7.2ch.net/test/read.html/〜で
削除依頼とか出す人いそう
2006/11/16(木) 17:39:32ID:IkQkXrcf0
早速出た

(株)ソシエ・ワールド
http://qb5.2ch.net/test/read.cgi/saku2ch/1163658925/1
2006/11/16(木) 17:39:56ID:WThXHxR60
>>873
むむっ…
876root▲ ★
垢版 |
2006/11/16(木) 17:55:48ID:???0
>>873
ん、、、これはいまいちかも。
877root▲ ★
垢版 |
2006/11/16(木) 17:59:29ID:???0
いったん life7 の bbs.cgi の該当箇所を戻しておきます。
read.html の機能は殺さないけど、
デフォルト(index.html subback.html 等)は元に戻るはず。
878root▲ ★
垢版 |
2006/11/16(木) 18:01:05ID:???0
>>877
done.

ちと、しばらくオフライン。
879ひろゆき@どうやら管理人 ★
垢版 |
2006/11/16(木) 18:23:13ID:???0?S★(101205)
sakuのbbs.cgiでread.htmlだとread.cgiに変換するようにするとか。
2006/11/16(木) 18:47:02ID:WThXHxR60
サザンくーん
2006/11/16(木) 18:53:20ID:77jaRiHP0
削除依頼がread.htmlでも別にかまわないんでわ
882ひろゆき@どうやら管理人 ★
垢版 |
2006/11/16(木) 19:00:02ID:???0?S★(101205)
削除ツールのほうで対応してないとかの問題だったりするんすかね?
2006/11/16(木) 19:01:17ID:PGXoY5EL0
そういうことでないかな。
2006/11/16(木) 20:50:50ID:dGPoc1m+0
ん?と,削除依頼で提示される URL が read.html になるのが問題なのであれば,
saku / saku2ch の書き込みでは本文中に /test/read.html/... が出てきたら
/test/read.cgi/... に変換するとかすればいいとかいうことではなくて?
2006/11/16(木) 20:58:36ID:cvs/AcRv0
itadakiオンライン蛾物故割れた
2006/11/16(木) 21:04:06ID:UdZhrCoZ0
こんな形で依頼が注目されてしまって、ちょっとお気の毒かも。
2006/11/16(木) 21:08:51ID:IkQkXrcf0
専ブラの作者さんにも対応してもらわないとな
2006/11/16(木) 21:27:08ID:dGPoc1m+0
あるいは,read.cgi という URL のままで read.html の機能を提供できればいいのかも.

例えば,index.html / subback.html 中の JavaScript で URL 書き換えの代わりに Cookie の設定をして,
鯖側ではその Cookie があった場合に mod_rewrite で read.cgi という URL のまま read.html の内容を返す,と.
2006/11/16(木) 22:37:15ID:dGPoc1m+0
>>888 の形で bbs.cgi 更新しますた @qb5, life7
んで,mod_rewrite の設定をこうしてもらえばいいかと.

RewriteCond %{HTTP_COOKIE} (?:^|;\s?)READJS="?on"?(?:$|;)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1

RewriteCond %{HTTP_USER_AGENT} MSIE\s(?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko/|Opera/(?:[89]|\d{2,})\D
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !^http://(?:\w+\.)?(?:2ch\.net|bbspink\.com)/(?:\w+/(?:|(?:subback|index)\.html)$|test/read\.(?:html|cgi)[#/]?)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1
890root▲ ★
垢版 |
2006/11/16(木) 23:23:07ID:???0
今の rewrite の設定は、

RewriteCond %{HTTP_USER_AGENT} MSIE\s(?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko/|Opera/(?:[89]|\d{2,})\D
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !^http://(?:\w+\.)?(?:2ch\.net|bbspink\.com)/(?:\w+/(?:|(?:subback|index)\.html)$|test/read\.(?:html|cgi)[#/]?)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1 [R]

ですが、その下に >>889 を追加すればいい、ということなのかしら。
891root▲ ★
垢版 |
2006/11/16(木) 23:24:31ID:???0
いや、自分なりに読んでみると、

>>890 の4行のところを、
>>889 の6行と入れ替える、ということかしら。
892root▲ ★
垢版 |
2006/11/16(木) 23:26:13ID:???0
で、今日はちと限界かも。
明日ということで。
2006/11/16(木) 23:28:01ID:dGPoc1m+0
>>891 そうです.今まで external redirect してたのを internal redirect にするってことで.
これで,外面的には read.html という URL を使わずに済むようになるってことで.
2006/11/16(木) 23:50:52ID:UdZhrCoZ0
なにげに>>800の言ったとおりになったなぁ。
2006/11/17(金) 01:17:20ID:aXxWoHe70
VIPに入れてread.cgiとめちゃったら?
2006/11/17(金) 01:23:46ID:ckg2ZVNy0
>>892 乙です.

とりあえず,今は臨時に test/.htaccess 置いて

RewriteEngine on
RewriteCond %{HTTP_COOKIE} (?:^|;\s?)READJS="?on"?(?:$|;)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1

のようにしてます(httpd.conf 側の設定が完了したらこれは消します).

で,これに伴い従来版 read.cgi にアクセスしたい場合用に
read.so を read.cgi に対する symlink として置きますた.
897ひろゆき@どうやら管理人 ★
垢版 |
2006/11/17(金) 01:35:30ID:???0?S★(101205)
internal redirectっていう手があるんすねぇ。
面白そうだし、やるだけやってみますか。
2006/11/17(金) 01:44:59ID:jMfcjC2L0
てst
2006/11/17(金) 01:57:16ID:qomq8mTg0
ずっと専ブラなんで何が起こってるのか判らんが・・・軽くなるならいいぞ
>>897
一日過ぎたが誕生日おめ
2006/11/17(金) 02:45:14ID:ymJzGn6U0
某スレを見ようとブクマをクリックしたら
いきなりスレイプニル1.66が不正終了(でも何故かアプリ自体は落ちない)して
「読み込み中」の表示が出たまま固まったから何事かと思ったよ。
アプリ再起動したら普通に読み込めるようになったけど。
901動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 06:05:02ID:YDdxhA3F0
うちのjavaコンソールで見れないんですが。
専ブラのギコナビ、マカフィ導入したらスレが見れなくなって
使えなくなったから、IEで見てるんだけど。
2006/11/17(金) 09:26:48ID:ckg2ZVNy0
>>900 ん〜たまたま落ちたのか,それとも特定の条件で再現するのかが問題ですが,
また落ちるようなら知らせて下さい.

>>901 Java コンソールは Java アプレット(JavaScript とは別物)で発生するエラーメッセージ等を
表示するものじゃないかと...... それとも,IE でスレ表示自体ができないんですか?
2006/11/17(金) 09:49:10ID:W4g9Bj8z0
オペラと火狐は問題なかったけど読み込む時にもっさりしてる
904動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 10:20:57ID:ofBotg3H0
>>902
901だけど、板一覧からクリックすると
読み込み中。。。の表示だけになる。
javaの設定がおかしいのかな?
905動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 10:28:44ID:ofBotg3H0
アプレットにjava2v1.4.2_03を使用してるんだけどな…。
2006/11/17(金) 10:38:32ID:ckg2ZVNy0
>>903 まぁ,いったん HTML ページ読み込んだ後に dat 読み込みますからね......

>>904-905 これで使用してるのは Java ではなく JavaScript です.
んで,↓を参考に設定を見直してみて下さい.
http://help.yahoo.co.jp/help/jp/common/sys/sys-07.html
2006/11/17(金) 10:54:33ID:O9wcaFb90
2ch内のリンクから飛んだり、アドレスバー直打ちだとURLがread.cgiのままなのに
googleやスレタイ検索など外部からのリンクから飛ぶとURLがread.htmlになってしまうのは仕様ですか?
2006/11/17(金) 11:01:19ID:ckg2ZVNy0
あるいは,ウィルス対策ソフト導入してる場合に JavaScript 有効にしてても
read.js がブロックされて動かなくなっちゃう,って可能性はあるのかな......?


>>907 まだ httpd.conf の設定変更が完了してないためではあるんですが,
臨時の test/.htaccess の方で対策してみますた.今はどうですか?
2006/11/17(金) 11:07:16ID:ckg2ZVNy0
ん?同じ URL に対する RewriteRule が .htaccess と httpd.conf 両方にあると
httpd.conf の方が勝っちゃうのか......ってことで,httpd.conf の設定変更まで
お待ち下さいってことで...... >>907
2006/11/17(金) 11:08:28ID:igi5gxyX0
ウイルス対策ソフト「うはwwwwwwwwajaxktkrwwwwwwwwwwwww遮断wwwwwwwwwwwwwwっうぇwwwっうぇ」
911動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 11:14:13ID:GMHcZ2FT0
ここは技術的な話の場かな?
取り敢えず書いておこう。
life7でJavaScript版になったらIEから書き込みできなくなった。

ERROR! ERRORブラウザをリロードしてみてください
ホスト xxxxx

ってでる。
read.cgiをread.soに直したら書き込めるけど。
2006/11/17(金) 11:14:38ID:O9wcaFb90
>>909
了解しました。
2006/11/17(金) 11:22:22ID:W4g9Bj8z0
IEで書いてみたら書き込みの確認タブが出てくるまで5秒ぐらいかかった
2006/11/17(金) 11:25:16ID:O9wcaFb90
何の問題もなく書けた。IE7です。
2006/11/17(金) 11:29:06ID:ckg2ZVNy0
>>911 「ERROR:ブラウザを立ち上げなおしてみてください。」というエラーであれば,
PC 側の内蔵時計が実際の時刻よりかなり進んでる場合に発生する可能性があります.
時計を合わせてから再度やってみて下さい. http://www2.nict.go.jp/cgi-bin/JST.pl
916911
垢版 |
2006/11/17(金) 11:30:05ID:GMHcZ2FT0
おいらはIE6だけど、何度やってもダメ。
ブラウザ閉じてやってもみたけど、どうしても書き込めない。
917911
垢版 |
2006/11/17(金) 11:35:43ID:GMHcZ2FT0
>>916>>914までしか見てなかった。

>>915
書きこめた。ありがとう。
それにしても、たった6分程度でダメなのね。
2006/11/17(金) 11:40:03ID:igi5gxyX0
六分はずれ過ぎ
919動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 11:55:12ID:kfExmy/50
6分はずれすぎだろ・・・NTP的に考えて・・・
920root▲ ★
垢版 |
2006/11/17(金) 12:35:47ID:???0
>>889 を入れました。@ life7
2006/11/17(金) 12:45:05ID:O9wcaFb90
お疲れ様です。
>>907が直ったのを確認しました。
922動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 13:44:20ID:drSJ8rji0
901ですが、株価さん、スプリクトはみんな有効になってました。
今のところread.cgiをread.soにすれば見れたので手動で見ます。
ウィルスソフトをノーdからマカフィにしたのが悪かったのかな?
923ひろゆき@どうやら管理人 ★
垢版 |
2006/11/17(金) 13:53:29ID:???0?S★(101205)
スプリクトのせいかもしれませんね。えぇえぇ。
924動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 13:55:23ID:drSJ8rji0
>>まろゆき
有効になってるスクリプトのせいなのかよorz
2006/11/17(金) 13:58:34ID:drSJ8rji0
スプリクトでどうも変換できないと思ったけど、まろゆきに
突っ込まれて、924で比べてやっとこ間違いに気づいたw
連投スマソ、逝ってくるorz
2006/11/17(金) 14:00:28ID:DvUBieSF0
アンチウィルスソフトが原因かどうかは、自分で切って試せばわかるでそ
927911
垢版 |
2006/11/17(金) 14:01:51ID:lwMRSH700
トラブルをサポートしてもらえたので気を良くしてもう一つおかしなところ。

書き込む時に「〜」を使うと表示が「???」ってなる。
専用ブラウザでどう見えるのかは分からないが、私のIE6ではそう。
2006/11/17(金) 14:28:31ID:O9wcaFb90
>>927
IE7で書いても同じです。
JaneDoe Viewで見ても???になってます。
929動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 14:33:34ID:RGj6QQx30
ここは、苦情書いていいの?
2006/11/17(金) 14:37:05ID:82tOr96u0
書くのも自由 聞かないのも自由
2006/11/17(金) 14:47:09ID:drSJ8rji0
>>926
アンチウィルスのウィルス対策設定やスクリプトスキャン設定を
オフにしても同じだった。
ソフトのせいじゃないみたい。
read.soにすれば見れるし書き込めるので、当分そっちでやってみる。
2006/11/17(金) 14:50:09ID:RGj6QQx30
外野には聞いてない
ま、運営のスタンスはいつも同じでしょうけど

いつかやってた、書き込み時の広告をやめたのは苦情がきたからなのでしょうか?
運営は快適かもしれませんが、利用側にとっては反応性が悪くなって
快適性が損なわれてます。
やめてほしいし、少なくとも板の適用範囲の拡大はしてはほしくない。
2006/11/17(金) 14:56:18ID:igi5gxyX0
ただなんだし、誰かに強制されてるわけでもないし。
無理に使うことはないよ。
少なくとも、俺は今までよりいろいろな機能がついて便利だと思ってる。
be.js以外は。
2006/11/17(金) 15:01:05ID:drSJ8rji0
でもなんでlife7に?というのはある。
2006/11/17(金) 15:03:57ID:s4U2jf+I0
>>927-928
文字コード変換ライブラリがらみかな。
>>872 の作業が終われば直るかも。
2006/11/17(金) 15:06:22ID:RGj6QQx30
>>933
1回書くだけ書いて、もうレスはしないつもりでしたけど
デフォルトで使用状態になってるのに言ってる意味がわかりません。

スレを開けばオフにできますけど
別のスレを開くたびまた同じことです、使わないことにするだけでわずらわしいです。

板のトップでオフにできるなら、それにこしたことはありませんけれど
勘違いでしたらごめんなさい。
2006/11/17(金) 15:09:20ID:igi5gxyX0
主語を抜いていたな。

「2ちゃんねるは」
2006/11/17(金) 15:18:57ID:RGj6QQx30
>>937
そういう極端論をいうひとはどうでもいいです。
2006/11/17(金) 15:22:21ID:igi5gxyX0
そういう決め付けをする人はどうでも良いです。

専用ブラウザを使う等、いくらでも回避策はあるのに自分が努力せずに
相手に自分の思い通りになるようにしろと文句ばかり言う人はいなくなれば良いと思います。
2006/11/17(金) 15:29:16ID:RGj6QQx30
>>939
え〜と、運営側でもないひとの個人的意見はどうでもいいですよ
専ブラ使えば関係ないのは、導入する以前から同じことですから

全てわかってる上でIE上の利便性についての、苦情をさせてもらってますので
運営が正義だ〜!って、いうひとの御託はどうでもいいです。
2006/11/17(金) 15:34:34ID:ckg2ZVNy0
>>920 乙です.

>>927-928 >>935 ってことです.

>>931 不思議ですねぇ......まぁ,mod_rewrite での振り分けに
Cookie 使うようになったので,index.html / subback.html に
手動で Cookie 設定できる機能を付けてみようかと思います.
>>932 のような意見もありますし.
2006/11/17(金) 15:37:10ID:igi5gxyX0
>>940
だから決め付けるなっての。運営が正義だ〜!なんて誰が書いたんだ。
2006/11/17(金) 15:57:36ID:drSJ8rji0
>>941
面倒かけますね。
一応、read.soは使えたのでどうにかなると思う。
もしかしたら別の原因があるかも知れないし。
944stream ◆PNstream2s
垢版 |
2006/11/17(金) 16:01:43ID:1hNbxNQl0
this.postForm.time.value = Math.floor(new Date().getTime() / 1000);

this.postForm.time.value = Math.floor(new Date().getTime() / 1000) - 1000;
ぐらいにすればPCの時計に依存しなくてすむんで変えて欲しいなあ。
あるいはいっそのこと
this.postForm.time.value = 1;
にしちゃえばいいんですけど。

2chの時計がずれたときとか、スレ読み込んですぐ書き込むときとかも問題出るかもしれないし。
(昔Janeとかtwintailで苦労しました)
2006/11/17(金) 16:16:51ID:RGj6QQx30
>>941
素直にお礼を言わせて貰います
ありがとうございます

門外漢ですので、まだどういうことになるかは、わかりませんが



それと、もうひとつ思った可能性ですが
わたしの使ってる回線はADSLですが低速です、それによってひじょうにひっかかりを
感じてるのかもしれません、いろんな環境のひとがいると思いますのでご一報まで。
2006/11/17(金) 17:23:48ID:5XPi77kNP
>>945
その人も半分外野だけど(笑
名無しは黙ってろって素直に書けばいいのに
2006/11/17(金) 17:30:50ID:igi5gxyX0
datサイズ22.1 KBのとき 
read.cgiの吐いたHTML 30.1 KB
read.html使用時( read.html 4KB + read.js 44.0 KB + dat ) 69.2 KB

139 KBのとき
read.cgi 178 KB
read.html 186 KB

307 KBのとき
read.cgi 348 KB
read.html 354 KB

試してみたけど通信量は低容量になればなるほど差が大きくなる。
二倍程度に開くことも。
datサイズが増えると差は小さくなる傾向。

最初のread.htmlはread.cgiの吐くhtmlより小サイズなので、
read.cgiの吐くhtmlよりも速く読み込まれ描画される。
その後、javascriptでdatが変換され、描画されるため、
高速なPCよりも低速なPCは引っ掛かりを感じるかもしれない。

また、read.html自体は上記のread.cgiの吐くhtmlよりも速く読み込まれ描画されるため、
実際の全体の処理時間自体はそんなに変わらなくても(javascriptでの変換が入るので、少々遅くなるのは確実だが)
「読み込み中。。。」の画面で待たされるため、これを遅く感じるということもあるかもしれない。

>>946
そういやよほどこの人のほうが自分の言ってることに当てはまってるな。
2006/11/17(金) 17:32:40ID:drSJ8rji0
>>945
自分も超低速だ。
しかもISDNだしw
2006/11/17(金) 17:55:41ID:ckg2ZVNy0
index.html / subback.html にモード切替機能を付けてみますた.
>>944 の件は -1800 にしてみますた.
2006/11/17(金) 18:09:50ID:s4U2jf+I0
>>947
なるほど。read.jsはキャッシュされるから最初に1回読み込めば
次のスレッドからは転送量の低減が見込めそうですね。
低速回線の人には福音かも。

CPUが遅いマシンを使っている人はJavaScriptでの変換時間が気に
なりそうですなあ。「全部読む」を使わないのが逃げ道かな。

>>949
お疲れさまです。Firefox 2.0(WinXP)で切り替えできました。
2006/11/17(金) 18:13:04ID:5kzVP8XfP
運用の却下屋はただ却下してる訳じゃない。
ボランティアさん(主に作成者)が繰り返し説明した事を
復唱してるのだよ。

一人の人が百回説明するより、
百人の人が一回説明する方が効率が良いだろう?
名無しもボランティアなのだよ。

話の歪みは各自で判断してくれ。
2006/11/17(金) 18:27:47ID:RGj6QQx30
>>949
ありがとうございます。

大げさですが、素早い対応に涙が出ました
これで使い分けできますし諸所問題がなければ、なにとぞこれで
いってほしいかなとネットの一庶民的には思います。


>>947
レスを汲み取っていただきありがとうございます。
「読み込み中。。。」画面での度々の待ちが主にひっかかりですね
体感上も実測でも
特に>>950全部読むは使うと思いますよ

(全体的に、失礼な文章に、もしなっていたらごめんなさい)
2006/11/17(金) 18:45:55ID:igi5gxyX0
試験的にread.htmlのdat読み込み変換表示速度を計測できるようにしてみるのも面白いかも。
リソースの無駄遣いと言う気がせんでもないが。
954ひろゆき@どうやら管理人 ★
垢版 |
2006/11/17(金) 18:50:56ID:???0?S★(101205)
>>953
なんとなく面白いかもかも。。
2006/11/17(金) 19:08:23ID:ckg2ZVNy0
>>953-954 本文欄に入れるようにしてみますた.
2006/11/17(金) 19:14:17ID:igi5gxyX0
早!

早速このスレを読み込んでみました。
http://life7.2ch.net/test/read.html/lifesaloon/1162569075/l50
elapsed time: 1.375 sec.
CPU:p4 3.0GHz Mem DDR400 CL3 dualch. 2GB
2006/11/17(金) 19:20:47ID:4vsd+olT0
>>956のスレッド

l50
elapsed time: 1.001 sec.

all
elapsed time: 2.203 sec.

CPU:PenM 1.7GHz

これ、本文欄に表示だと普通の利用者には邪魔じゃないのかな
read.cgiのバージョン付近に表示してほしい
2006/11/17(金) 19:37:27ID:RGj6QQx30
>>956のスレッドに同じ

l50
elapsed time: 1.125 sec.〜 1.485 sec.

all
elapsed time: 5.563 sec.〜 6.156 sec.


Ceieron(R)CPU2.60GHz

※測定値は都度若干の幅あり

行きがかり上、わたしも計測させていただきました
お前のパソコンが遅いんだよプギャーってのはなしでお願いします
容量が多いところですと全表示で15秒などと、測定してます
2006/11/17(金) 19:40:43ID:igi5gxyX0
ブラウザ書き忘れた。

http://life7.2ch.net/test/read.html/lifesaloon/1162569075/
CPU:p4 3.0GHz Mem DDR400 CL3 dualch. 2GB

IE 6.0.2800.1106
一回目 elapsed time: 2.109 sec.
二回目 elapsed time: 1.766 sec.
三回目 elapsed time: 1.937 sec.

firefox 2.0
elapsed time: 2.187 sec
elapsed time: 1.907 sec.
elapsed time: 1.797 sec.

opera 9.02
elapsed time: 1.375 sec.
elapsed time: 1.469 sec.
elapsed time: 1.562 sec.
2006/11/17(金) 19:44:26ID:3LvOWIO00
ATHLON XP2200+ 256M

炎狐2
ALL elapsed time: 0.672 sec.
50 elapsed time: 0.703 sec.

IE7
ALL elapsed time: 0.625 sec.
50 elapsed time: 0.546 sec.

おまけ
炎狐3 Reflow Refactoring
ALL elapsed time: 2.766 sec.
50 elapsed time: 0.657 sec.
2006/11/17(金) 19:45:04ID:amPCNJIO0
>>957
同意ー

http://qb5.2ch.net/test/read.cgi/operate/1148800583/790
2006/11/17(金) 19:55:02ID:ckg2ZVNy0
場所変えますた〜.
2006/11/17(金) 20:00:37ID:4vsd+olT0
どうも乙です。
2006/11/17(金) 20:01:22ID:W+W3zuCB0
表示位置変わりましたね。(某雑談スレではうぜえええええと評判でしたよw)

以下は>>956のスレッドです。
表示位置が変わる前の測定値です。

Celeron1066MHz 256MB

IE6.0.2800.1106
all
elapsed time: 3.945 sec.
elapsed time: 3.655 sec.
elapsed time: 3.715 sec.
elapsed time: 3.796 sec.
elapsed time: 3.785 sec.

firefox2.0
all
elapsed time: 4.025 sec.
elapsed time: 3.545 sec.
elapsed time: 3.405 sec.
elapsed time: 3.555 sec.
elapsed time: 3.425 sec.
2006/11/17(金) 21:58:55ID:igi5gxyX0
単純な計測スクリプトを書いてページを取得して描画するだけの速度計ってみた。
>>959の全部をIE6エンジンのHTAで読み込んだ場合500ミリ秒程度だった。

UTF8じゃないから文字化けしたけどね。
966^@kj7^@kj7 ◆VswWSpFPH2
垢版 |
2006/11/17(金) 21:59:19ID:jYqxD3bL0
 
 このスレッドで、お願いして宜しいのでしょうか?
 
 昨日深夜から、『夢・独り言@2ch掲示板』のスレッドの設定が変わったらしく、
スレッドの上部近くに『beチェック2BP BRZ PLT DIA S★』の
表記も出るようになってから、マイクロソフトのWindowsXPのインター
ネットエキスプローラーで、『ブラウザ→ファイル→名前を付けて保存』をやっても、
スレッドの保存ができなくなってしまいました。昨日の夕刻までは、その操作で
スレッドを保存することができたのですが。
 
2006/11/17(金) 22:10:24ID:BUQdQ8/00
うんこ
2006/11/17(金) 22:19:00ID:NjpzQgpF0
>>966
面倒かとは思いますが、アドレス中のread.htmlをread.cgiまたはread.soに
変更して対処してくださいませ。
2006/11/17(金) 22:19:39ID:s4U2jf+I0
>>966
スレッド画面の下にある「非 JavaScript 版は URL 中の read.cgi を read.so に」
というリンクをクリックすると以前と同じモードになります。こちらなら保存できる
でしょう。

毎回古いモードで表示したいなら、板のトップにあり「read.cgi モード切替」の
リンクをクリックすれば表示モードを変更できます。

なお、スレッドを保存するなら2ちゃんねる専用ブラウザの利用をオススメします。
970^@kj7^@kj7 ◆VswWSpFPH2
垢版 |
2006/11/17(金) 22:26:13ID:jYqxD3bL0
 
>>968様、>>969

 お教え下さりまして、どうもありがとうございました!
 
2006/11/17(金) 22:32:39ID:O9wcaFb90
CGIモードにしていても外部リンクから飛ぶとread.jsが動いちゃいますね
2006/11/17(金) 22:38:25ID:yh174j0r0
Javascript有効の人は、人大杉がなくなるのかな?
973ひろゆき@どうやら管理人 ★
垢版 |
2006/11/18(土) 00:40:24ID:???0?S★(101205)
39 kB (0.578 sec.)
974ひろゆき@どうやら管理人 ★
垢版 |
2006/11/18(土) 00:40:35ID:???0?S★(101205)
>>972
そうかも。
2006/11/18(土) 00:46:25ID:ycMJ8O6X0
わぁい。
976動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/18(土) 01:08:18ID:1w3BmaPW0
ん? なんか変だwww
2006/11/18(土) 01:27:13ID:n+K8iL/+0
>>971 あぁ,そうか......

    RewriteCond %{HTTP_USER_AGENT} MSIE\s(?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko/|Opera/(?:[89]|\d{2,})\D
    RewriteCond %{HTTP_REFERER} ^http://
    RewriteCond %{HTTP_REFERER} !^http://(?:\w+\.)?(?:2ch\.net|bbspink\.com)/(?:\w+/(?:|(?:subback|index)\.html)$|test/read\.(?:html|cgi)[#/]?)
    RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1

の部分の条件に

    RewriteCond %{HTTP_COOKIE} !(?:^|;\s?)READJS="?off"?(?:$|;)

を付加すれば Ok のはず.
2006/11/18(土) 01:38:55ID:n+K8iL/+0
>>966 保存だけが目的なら,モードを変えなくても
「非 JavaScript 版は URL 中の read.cgi を read.so に」
のリンクを右クリックして保存でもいいですね.
2006/11/18(土) 01:54:02ID:BQfxzTWv0
表現が分かりにくいかも
見られない人は以下のリンクへって書いてその下にリンクを貼るとか。
2006/11/18(土) 02:14:43ID:ihFbmVLI0
報告
板のトップでCGIモードにしていても、なにかのはずみでJavaScriptモードで
読みに行ってしまう場合があるようです。

一度は書き込みのあとで、その他はタイミング不明。

たまにしか起こらないので使用上では問題はありませんが。
2006/11/18(土) 02:57:46ID:B+/ZbnqW0
ぐぐるのキャッシュはどうなんるんだろ
2006/11/18(土) 02:59:59ID:pcnjt/0Y0
これからは無しかな・・・
2006/11/18(土) 03:06:26ID:bA5onYG+0
Googlebotからのアクセスはread.cgiに行くようにすればいいんじゃね?
2006/11/18(土) 03:28:23ID:QwAELBtt0
901ですが、解決しました。
スレをクリックすると、読み込み中。。。という表示が
ページを表示しましたになっても変わらないのですが、
上の「全部」とか「最新50」とかクリックすることで
見れるようになりました。
でも読み込んでる途中でクリックすると、javascript:void;0
となり見れないままです。
2006/11/18(土) 03:37:22ID:QwAELBtt0
あれ?ページを表示しましたになっても、
javascript:void;0になって見れなくなった…orz
読めたのはわずかの間だった…orz
2006/11/18(土) 03:41:34ID:qSXe9PBA0
IEとOSのバージョン、サービスパックレベルを書いておくとよいかもしれませんよ
2006/11/18(土) 06:29:56ID:ZBgoKl7xO
えーん!゚(ノд`゚)゚・。
2006/11/18(土) 07:52:33ID:lRgugXJY0
>>986
901です。
OSはwindowsXP SP2
IEのバージョンは6
ただし、回線速度はかなり遅く、115.2kbps
989◆jh9.qqAS0E
垢版 |
2006/11/18(土) 09:57:41ID:ZBgoKl7xO
えーん!(つд;*)
2006/11/18(土) 09:59:17ID:hGWAaOG30
>>989
黙れ糞野郎!!!
991◆jh9.qqAS0E
垢版 |
2006/11/18(土) 10:04:29ID:ZBgoKl7xO
>>990えーん!いじめる〜!゚(ノд`゚)゚・。
992◆jh9.qqAS0E
垢版 |
2006/11/18(土) 10:13:51ID:ZBgoKl7xO
えーん!(つд;*)

∠__::::::::::::::....  ::::::' ノノ.:::/         \
    ̄7ー-、:::::::   ´.:::/ .:::::..           \
    l::..ラ´.::. .:: .:::::::``ヽ:.::::.::::..:. :. :. :.  ::.. :.   \
     l/::::/:: .::: .:::::/-!:: :::. :: ::.::.:::::.:::.::. ::::.::.:. ト-ヽ、
.    /.::,.イ::: :: ::.:::‐ナ‐-、|:.::::. ..:. ::!::ハ::::::!:::::::::l::::::!
   //!::i:.:.:./::::// ,r==、ヽト、:::.:::|:,r=、:::|:::!:::::!::::/
  ´  l::!:::::l::::/l::::!/ ,r=、`  ヽ:::|,=、 }イ:/:::/|:/
     l|:::::ハ/::!l:::l 、 {{ o}}.:.:::::::::ソ{o}}, '/イl::/。´
    。 ヽ|::::::::l:ヽヽ` ̄ _   、  ̄ j:::メ'、 o  _,. -‐
   ○ ゚ lハ:::::ヽ::`ド‐ /‐`=ァ _, ィ´::ノ二 -‐_二 -‐:::
     ,. '´ ̄``丶ヽ!``゙'==彳_:⊥'-‐´_, ィ´::::::::::::::: .::
   /       ヽ、ー_.. -‐'´ _..-‐'´-_'´-― 、   .:
. /、      ..:::_,. -‐'´.::::: _,. '´ ̄ ̄`ヽ:::::::::::.. j .::: /
´  ヽ:....:::,. -‐'´..::::....::,. <        ` ー 、:/..::/
     }/!`ヽニー-,. '´   \         ⌒ ヽ、-、
   / /  ,.イこラ`ヽ     ヽ       ::::::::::::::::ヽ:ノ
 /  /  i::::`ー'::::::::ヾ     ',       :::::::::::::::::::::!
'´    !  !:::::::::::::::::::,.'      !        ::::;:::::::::/
     !   `    '       !          ''''´イ
     ヽ              / }\         /
      \          /    \     /
       ` 、     _,.イ       ヽr―‐ '
           ̄} ̄          ハ
             /          {!    ト、
        /                /  ヽ
        /  ` ー -- ... ___    /_ ..- }
      /              ̄ ̄      |
993^@kj7^@kj7 ◆VswWSpFPH2
垢版 |
2006/11/18(土) 10:36:08ID:W2+nISLF0
 
>>978

> 株価【1050】 ▲▲ ◆cZfSunOs.U 様

>>966 保存だけが目的なら,モードを変えなくても
>「非 JavaScript 版は URL 中の read.cgi を read.so に」
>のリンクを右クリックして保存でもいいですね.


 お教え下さり、どうもありがとうございました。これからも宜しくお願い致します!(^^ゞ
 
2006/11/18(土) 12:57:14ID:n+K8iL/+0
>>979 表現をちょっと変えてみますた.

>>980 IE ってたまに Referer がおかしくなるバグがあったんでしたっけ?
とすると,おそらく >>971 と同じ原因ですね(対策は >>977).

>>981-983 検索ロボットは mod_rewrite で read.html に振る条件に
合致しないでしょうから,従来版 read.cgi に振られるはずです.

>>984-985 不思議ですねぇ......
2006/11/18(土) 13:00:02ID:zaLvZEOT0
スレッドを読む機能って大事なことだから、その辺の実験をex系以外で最初に始めるのはおかしい
2006/11/18(土) 13:08:14ID:bIzJhDNz0
2chは全体が巨大な実験場なのでは?
exはいきなりサーバーが落ちたりする危険な実験がよく行われますが・・・。
まあ、exでやるほうがいいのでしょうが、いつも実験場になるVipが
別の実験中ですし、root権限がないみたいですし・・・。
しょうがないのでは?
2006/11/18(土) 13:23:10ID:n+K8iL/+0
>>995 実験って意味では,life7 での導入前に dso でやってました.
今やってるのは,実験と言えないこともないかも知れませんが,
本格導入に向けた前段階って感じかと思います.ちなみに life7 が
選ばれた理由は,read.cgi 呼び出し数が多いためその代替となる
read.html の効果を確認するには適しているということです
(専ブラユーザの多いところでやってもあまり意味がない).

# そろそろ次スレですね......
2006/11/18(土) 13:27:41ID:I+LmPL990
>>997
901です。
また時間を置いたらまた読み込めたので、様子見します。
株価さん、ご迷惑おかけしました。
999root▲ ★
垢版 |
2006/11/18(土) 13:32:41ID:???0?PLT(20002)
>>977
RewriteCond %{HTTP_USER_AGENT} MSIE\s(?:[6-9]|\d{2,})\D|rv:(?:1\.(?:[89]|\d{2,})|[2-9]|\d{2,})\D.*Gecko/|Opera/(?:[89]|\d{2,})\D
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !^http://(?:\w+\.)?(?:2ch\.net|bbspink\.com)/(?:\w+/(?:|(?:subback|index)\.html)$|test/read\.(?:html|cgi)[#/]?)
RewriteCond %{HTTP_COOKIE} !(?:^|;\s?)READJS="?off"?(?:$|;)
RewriteRule /?read\.cgi(/.*)?$ /test/read.html$1

にした。@ life7
2006/11/18(土) 13:36:29ID:ZZGQ6aSk0
立ててくる
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況