X



トップページ運用情報
1001コメント394KB
read.cgi 2006―JavaScriptはCGIの夢を見るか
レス数が1000を超えています。これ以上書き込みはできません。
0003動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/25(火) 18:33:38ID:lpPV/JnB0
後の猪木である
0006動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/25(火) 18:41:47ID:6Zw5Wp6cO
セキュリティー上、ファイル書き込み不可な仕様だから無理

phpで殺れ
0009stream ◆PNstream2s
垢版 |
2006/07/25(火) 18:53:16ID:KZ+jrYir0
datファイルを取得というと勘違いされがちなんだけど、決してこれは2chブラウザの代替ではない。
read.cgiの代替(改良)である。
0010ひょうりゅう ◆MIPS.kHN86
垢版 |
NGNG
今までの dat と互換性を残すとすると、デフォルトが
javascript版になった場合、
http://qb5.2ch.net/test/read.cgi/operate/1153819270/
で表示されるのがjavascript版になると。

そして、今使われている read.cgi も残すとすると、それは
別のURLになるのかな。
もし、javascript版を別のURLにして、それをデフォルトにすると
専ブラの仕様変更が必要になる場合があるのかな。
0017stream ◆PNstream2s
垢版 |
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/ のように使う,と......
0019 ◆Reffiz2Zh.
垢版 |
2006/07/25(火) 21:42:50ID:5sn8wzG90
今のところの問題点

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

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


こんなところかな?
0021御法川将貴
垢版 |
2006/07/25(火) 23:17:23ID:QXaGIOsz0
斎藤優貴は価値も薄れた人間だな
0024root▲ ★
垢版 |
NGNG
さて、.htaccess 的にはどうすればいいのかしら。 < dso に入れる場合
0025stream ◆PNstream2s
垢版 |
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だと文字化けする、が俺の見解。
0026stream ◆PNstream2s
垢版 |
2006/07/26(水) 00:29:37ID:2SYEq+Uy0
今の状態でdatファイルは text/plain になってるから
ForceType text/plain
は要らないですかね

text/○○ じゃないと AddDefaultCharset Shift_JIS が反映されないんで
0031stream ◆PNstream2s
垢版 |
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
0032root▲ ★
垢版 |
NGNG
>>29
うーむ。

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

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

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

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

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

結局、単なる決められた数値演算に過ぎないし。
0037ひろゆき@どうやら管理人 ★
垢版 |
NGNG
はや!
0041ひろゆき@どうやら管理人 ★
垢版 |
NGNG
>>38
1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
何割なんでしょう。
少数の高額利用者の食い合いをしてる業界であればわかるのですが、
無料で利用できる掲示板にそのまま適用できるとは思えなかったりします。
0042root▲ ★
垢版 |
NGNG
>>41
> 1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
> 何割なんでしょう。

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

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

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

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

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

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

個人的には「廃人は思ったより多いなぁ」という感覚ですね。
というかマイレージプログラムがあるから、廃人が増えるのかもしれないです。
0045動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 02:15:06ID:HbnVPe7vO
それやるならついでにプロフィールの背景色連動させて変えようぜ。紺色にしたい
あとそろそろ ? を消して BRZ とかにリンクはらね。
そろそろスレ違いな雰囲気だが
0046root▲ ★
垢版 |
NGNG
>>45
> あとそろそろ ? を消して BRZ とかにリンクはらね。
> そろそろスレ違いな雰囲気だが

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

新しい read.cgi では、? をはずしてみるとか。
0048動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 02:21:51ID:HbnVPe7vO
あとポイント自分に送れるままにしとくなら
ポイントに必要なch森稼ぐ手段としての証券取引所も活性化が見込める
0049root▲ ★
垢版 |
NGNG
で、明日あたりに質雑を読み返して、
出てきた issue を、こっちにまとめておきますか。

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

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

すべては、一言の神の啓示から始まったと。
そんなわけで。
0051動け動けウゴウゴ2ちゃんねる
垢版 |
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に直さないとダメ。
0052 株価【1000】◆cZfSunOs.U
垢版 |
2006/07/26(水) 11:24:50ID:oRQikQhd0
XMLHttpRequest だといろいろ苦しみそうな気がするので,
方針転換して隠しフレームに読み込む形にしてみますた.
たぶん,これで文字化け問題も解決するかと......

それから,先日作った be.js も取り込んで,dat への記録は従来形式
(# の数でランクを示す)のままでも表示段階でマイレージランクに
変換するようにしますた.頭の ? も消えます(ただ,直接 dat に
マイレージランクを記録してる分には対応してません).
で,be.js は index.js と同様に www2 あたりに置いて頂ければ,と......
0056動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 13:28:36ID:3WFXWq3i0
全てに対応しようとしないで、対応していないブラウザはいままで通りread.cgiに飛ばすってのがいいんじゃいかと。
半分のアクセスをこれで対応するだけで、負荷的にはかなり下がるんだし。
0058動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 14:40:09ID:rpYommal0
IE以外のブラウザは無視して可ではないのですか。
どういうユーザ層がどのブラウザを使ってるか考えれば。
0060動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 15:11:36ID:dOdHM1Xl0
read.cgi動かすのとiconvとかnkfとかを動かすコストってどのくらい違うのかな。
ほら、XMLHttpRequestってリクエストヘッダも自由自在に送れたりするじゃん?
0061 株価【700】◆cZfSunOs.U
垢版 |
2006/07/26(水) 15:47:14ID:oRQikQhd0
隠しフレーム方式の場合,今度は文字コードではなく MIME type がバタつくようで...<IE
text/plain として扱ってくれるといいんですが,text/html と勝手に解釈してくれると
dat 中に含まれるタグのところでテキストがバラされたり \n もすっ飛んだり,
ってのが >>57 のようで......あちら立てればこちら立たず......
0062動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 15:48:07ID:aUhdqtnc0
というか、Ajax使うならまず最初にブラウザ判定をきちんとやって、
非対応ブラウザなら別の処理に回すってのが常道かと思うが
0063 株価【700】◆cZfSunOs.U
垢版 |
2006/07/26(水) 16:34:39ID:oRQikQhd0
>>62 まぁ現状では,JavaScript 版と CGI 版をそれぞれどんな URL で提供するかとか
そのあたりも決まってないし,そもそも IE での奇妙な挙動の問題を解決しないことには
実際に日の目を見ることもないでしょうから,その解決がまず先決でしょうし......


で,文字コード変換フィルタモジュールってことではこんなのがあったりします......
http://httpd.apache.org/docs/2.2/mod/mod_charset_lite.html
0064stream ◆PNstream2s
垢版 |
2006/07/26(水) 16:38:19ID:XjCWLJKJ0
IEだと「別の処理」すらできないのにブラウザ判定も何もないよ
0065動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 17:00:48ID:dOdHM1Xl0
Javascript用のdatディレクトリを用意してmod_charset_liteの設定をする.htaccessを用意して
datは専用ブラウザ用の方へのsymlinkにすると?
0066root▲ ★
垢版 |
2006/07/26(水) 18:13:56ID:???0
やりたいことと、とりうる手段の整理からしようかと。
0067 ◆Reffiz2Zh.
垢版 |
2006/07/26(水) 18:19:16ID:Ii4jXMtq0
とりあえず、最優先の問題点は現方式だとIEでは表示できない事ですか
(炎狐では問題なし)
0068動け動けウゴウゴ2ちゃんねる
垢版 |
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,"");

変化が無ければごめんなさいという事で。
失礼しました
0069動け動けウゴウゴ2ちゃんねる
垢版 |
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,"");

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

というわけで、整理を。

○今回やりたいこと

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

○今回の目標

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

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

ことを目標にする。

最終的には全廃をめざすが、read.cgi の起動数を少なくできるなら、それでもよい。
0075外野ァァン
垢版 |
2006/07/26(水) 19:16:29ID:WJtZ0RWx0
>>70がrootくんが独自に掲げたお題だっていうなら納得
>>70がひろゆきくんからの指令だって言うなら否定
0076root▲ ★
垢版 |
NGNG
>>70 は、私の位置づけです。

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

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

JavaScript 以外の候補としては、

・flash
・Java

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

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

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

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

などなどの要素を総合的に評価したうえで、
目標実現のためにどんな道具を使うのがいいか、決めたいかなと。
0079root▲ ★
垢版 |
NGNG
>>78
それも、手段としてはありえますね。

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

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

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

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

は、ちょっといまいちなのかなと。
0085stream ◆PNstream2s
垢版 |
2006/07/26(水) 20:34:48ID:kXk1e64C0
>>84
それは詳しい人のフォロー待ちです
マニュアルちょっと読んで試しただけなんで
0087 株価【800】◆cZfSunOs.U
垢版 |
2006/07/26(水) 21:20:34ID:oRQikQhd0
Java アプレットは重い(特に VM 起動時)ですからね......
Flash は Java よりは軽いでしょうけど,(文字列の扱いにもよるのかも
知れませんが)文字化けすることもあって......まぁこちらの環境は少数派でしょうけど.
http://sunos.saita.ma/read-js/test/flash.png
JavaScript はブラウザによって挙動不審になったりとかする部分もあったりするのが
苦労するところですが,それを乗り越えれば一番お手軽ではあるんですよね.

あと,フィルタモジュールの負荷ってことなら,文字コード変換より圧縮,
つまり mod_deflate の方がよほど重いかと.
0089動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/26(水) 21:29:57ID:gpcl/1Jf0
JSPって↓のようなやつだっけ?
<%
 for(int i = 0; i < bbs.getLastNum(); i++){
%>
メッセージ:<%= bbs.getMessage() %><br>
<%
 }
%>
0094 株価【800】◆cZfSunOs.U
垢版 |
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
0097root▲ ★
垢版 |
NGNG
>>90
それぞれの住民が、競い合って作るというのはどうか。

>>94
おぉ。

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

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

mod_proxy 使えばできそうな気がするんですが、どうやるのがいいんだろうか。
0099stream ◆PNstream2s
垢版 |
2006/07/27(木) 00:21:06ID:5ofr++i80
>>97
板のディレクトリのところに dat-utf8 とかでdatディレクトリに対しシンボリックリンク作って
そこへのアクセスはmod_charset_liteを使うようにするとか

これだと各サーバーの各板でシンボリックリンクを張る作業しなきゃいけないから大変?
0103動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/27(木) 18:42:21ID:viWF9XEA0
ブラウザによって違う動作といえば、Gecko系のXMLHttpRequestは
同一ホストか同一ドメインに限られていたような。
これは各サーバに入れておけば済む問題だが。
0104root▲ ★
垢版 |
2006/07/27(木) 20:07:57ID:???0?PLT(10000)
JavaScript は、結構方言が多いんですかね。

大きく分けると、

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

ぐらい?
0106 ◆Reffiz2Zh.
垢版 |
2006/07/27(木) 20:32:55ID:6s+Ev8y+0
>104
分類すると

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

OperaとSufariは使ったことがないので補足ヨロ
0111 株価【800】◆cZfSunOs.U
垢版 |
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>
0112root▲ ★
垢版 |
2006/07/27(木) 21:28:07ID:???0?PLT(10000)
>>111
おぉ、、、。

これは、dso.2ch.net に入れると、
テストが可能になると言っていますか?
0113 株価【800】◆cZfSunOs.U
垢版 |
2006/07/27(木) 21:33:51ID:fWmc8hHl0
>>111 かもですね.ただ...... sunos.saita.ma で見ている限りでは,
mod_charset_lite で必要な APR-Util 中の apr_xlate_*() の関数群が
FreeBSD だと普通にビルドすると APR_NOTIMPL になっちゃうかも知れない
っぽいんで,ビルド時に細工してやらないとならないのかも......?
0114 株価【800】◆cZfSunOs.U
垢版 |
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 のビルドし直しが必要かと.
0116tato
垢版 |
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に解釈されてしまうとしたら、
個々のブラウザのローカルなエンコード設定の問題なような気もするのですが、何はともあれ、その現象がどこでも再現するのかを確かめたいと思いまして、、、。
0122tato
垢版 |
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のわけは?
0125動け動けウゴウゴ2ちゃんねる
垢版 |
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をふりこんで置くように
0126動け動けウゴウゴ2ちゃんねる
垢版 |
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>
0127tato
垢版 |
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);

オーソドックスにこんな方が良いのではないかと思います。
0128tato
垢版 |
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

などで取り出すのが良いかも。
0129 株価【800】◆cZfSunOs.U
垢版 |
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 版を作るのは負荷対策というより
「こういうこともできるのか」という技術的好奇心の側面の方が強いという気がします.
0131stream ◆PNstream2s
垢版 |
2006/07/28(金) 11:08:13ID:F/mZ8+KK0
>>118のページに、「文字化けデモです」と注意書きを入れました。
0132動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 11:13:30ID:YlQHVubn0
>>129
> そうしたことを考えれば,JavaScript 版を作るのは負荷対策というより
> 「こういうこともできるのか」という技術的好奇心の側面の方が強いという気がします.

どこまでカリカリにチューニングしたって JavaScript を利用すれば結局
サーバ側の整形処理そのものを省略できるんだから負荷対策にはなるんじゃない。
0133tato
垢版 |
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を吐き出していないような気がするのですがどうなのでしょう?
0134 株価【800】◆cZfSunOs.U
垢版 |
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 指定を外してます.
0135tato
垢版 |
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()でキャッシュを無視したりする方がよいかもしれません。
0136動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 11:52:56ID:YlQHVubn0
>>134
全部同じ HTML でいいんだから1画面フレームで表示、てのもできるけど、そうでなくても
<script type="text/javascript" src="****.js"></script>
と指定すればこのファイルはキャッシュされるよ。

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

これは多分、read.cgi も同じでしょう。
Ajax スレの方に書いたけど、plain.cgi とか使えば最新 50 もできるよね。
0137 株価【800】◆cZfSunOs.U
垢版 |
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() して読み込むだけの
方が遙かに軽いわけですが......
0138136
垢版 |
2006/07/28(金) 12:07:04ID:YlQHVubn0
あーもっと簡単な方法に気づいた。
/test/read.html#/operate/1000000000/
location.hash で指定。ダメかな?
0139 株価【800】◆cZfSunOs.U
垢版 |
2006/07/28(金) 12:13:11ID:3rgozFxf0
>>138 余計なリクエストを発生させないという点では有効でしょうけど,
その形式が普及するまでの間,既存の板・スレ指定を行った URL が残る限りは
効果を発揮しきれないかと.まぁ過去にも一度 QUERY_STRING から PATH_INFOへの
転換を行ってるので,そうした新形式への変換は必ずしも不可能ではないかも知れませんが......
0140動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 12:28:17ID:YlQHVubn0
>>139
> 既存の板・スレ指定を行った URL が残る限りは効果を発揮しきれないかと.
あーそっか。そうだね。

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

でも、read.cgi はそれを更に整形してからネットワーク越しに送ってるんだよね?
送られるデータの量よりは、リクエストの数の方が問題なのかな。
0142tato
垢版 |
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の構造を変えるのは手間?
だめなら、キャッシュを無視。
0143tato
垢版 |
2006/07/28(金) 12:47:17ID:chE9END/0
静的ファイルへのリクエストと.cgiの負荷を比べると、普通は.cgiの負荷の方が高いと思いますが、
なにしろ、リクエスト数の多い2chなので、その判断は現場の人でないとわからないかも?
0144 株価【800】◆cZfSunOs.U
垢版 |
2006/07/28(金) 12:52:12ID:3rgozFxf0
>>140-141 read.cgi の処理による負荷があるのはわかります.しかし,
静的コンテンツであっても HTTP リクエストを処理することによる負荷もあります.
HTTP リクエストが増えればそれによる負荷増もあるってことで,
そのあたりを read.cgi をリファインした場合と比較すればどうなのか,と.
0146stream ◆PNstream2s
垢版 |
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: 昔の時刻 を設定するのが一番どのブラウザでも安全かと
0147tato
垢版 |
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にも任せられる?ハイブリッドみたいな?
0148 株価【800】◆cZfSunOs.U
垢版 |
2006/07/28(金) 13:23:21ID:3rgozFxf0
>>145 HTTP リクエスト数がほぼ同一という前提ならそれは当然です.
さすがに,単一のリクエストにおいて動的コンテンツ処理の負荷が
静的コンテンツ処理の負荷より軽いなんてことを言うつもりはないです.

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


要は,個人的には JavaScript 版 read.cgi を作ること関しては,
負荷対策を第一義的目標として掲げて行うことには懐疑的,
(負荷も考慮しつつも)技術的好奇心を主眼として行うのなら好意的,ってことです.
0149動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 13:33:36ID:YlQHVubn0
iframe 使った読み込みした場合のデータのキャッシュって普通のコンテンツと同じかな?
使えるとしたら、Expires で超未来指定することで HTTP リクエストを軽減できるかも。
0150tato
垢版 |
2006/07/28(金) 13:52:45ID:chE9END/0
それにしても、metaでもブラウザ側でもShift_JISを指定した上で、
IE6で通常のShift_JISファイルをXHRで読み込んで、文字化けするということは無いと思うので
gzip 圧縮か、Content-Type設定に原因があるかも。でも、仮にこれが解決してもXML処理の方がお勧めではあります。
0151149
垢版 |
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 を超未来にする、て感じ。
難点はあぼーんが反映されないってことだけど。
0152149
垢版 |
2006/07/28(金) 14:22:20ID:YlQHVubn0
× q{document...
◯ qq{document...
0153 株価【800】◆cZfSunOs.U
垢版 |
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 リクエスト増も加わるってことも考えれば......
0155149
垢版 |
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 ヘッダと併用することでリクエストそのものが無くなるみたいだよ。
0156stream ◆PNstream2s
垢版 |
2006/07/28(金) 15:18:29ID:7fX0/+L20
WindowsのIE6では、更新ボタンを押した場合は再読み込みされるよ
0157149
垢版 |
2006/07/28(金) 15:22:51ID:dbg/okTO0
>>156
そうなのか……それじゃぁ >>151-152 は使えないや。
0158 株価【800】◆cZfSunOs.U
垢版 |
2006/07/28(金) 15:37:48ID:3rgozFxf0
>>155 内側で読み込むデータってことね.それなら,今も実際に index.js で利用してて
効果は出てるようです.でも,外側の read.html のリロードまでは抑制できないかと.

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

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

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

read.cgi のキャッシュの仕組みがよくわからないけど、多分、
最新 50 の後に全表示とか、キャッシュにデータが重複してても構わず処理するんでしょう。
サーバ側は知る術が無いしそれは普通なんだけど、そうならやっぱり。
0161動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 16:16:12ID:lDXvnfU00
1レス1ファイルにするのが一番良い。
0162ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 16:21:33ID:???0?BRZ(2585)
jsはwww.2chとか静的コンテンツ用のサーバにおいて、
datはqb5.2chの既存のサーバとかコネクションを切り分けるとかって
出来るんでしょうか?
0164149
垢版 |
2006/07/28(金) 16:26:09ID:dbg/okTO0
js が別のサーバに置いてあったとしても、
js を読み込む(実行する) html が読みたい dat と同じドメインにあれば、dat は読み込めるよ。
0165 株価【800】◆cZfSunOs.U
垢版 |
2006/07/28(金) 16:26:33ID:3rgozFxf0
>>162 JavaScript 部分を HTML から分離して別のところに置く,ってのは
今の read.cgi や index.html でもやってます(www2.2ch.net/snow/index.js).
ただ,URL で鯖・板・スレを指定している限り,外側の read.html が
各所に散らばる状態はいかんともしがたいかと.
0166ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 16:31:45ID:???0?BRZ(2585)
外側の read.htmlといいますと?
0172 株価【800】◆cZfSunOs.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 が
当面そのまま残りますから......
0173149
垢版 |
2006/07/28(金) 17:09:55ID:dbg/okTO0
js を実行する html と違うドメインの dat は、js からは セキュリティの関係で読み込めないよ。
他ドメインの js ファイルを実行することはできるから、>>151-152 なら大丈夫だけどね。
0174動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 17:10:46ID:r+F+KIBY0
従来のアドレスにアクセスしたらそのアドレスに飛ばすっつーことか。
というかスキーム名要らなくない?
もっと言うとPATH_INFOでいいような。
0176ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 17:18:29ID:???0?BRZ(4585)
>>173
ドメイン単位?サーバ単位?

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

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

IE7β3では異なるドメイン間のサブフレーム移動はデフォルトで禁止
されてます。
(前までこの質問で賑わってました。)
0182 株価【800】◆cZfSunOs.U
垢版 |
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 ってことで,どちらも「同一ホスト」という制限かと.
0187動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 17:48:40ID:t3XQDhSZ0
???????????????
0188動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 17:48:45ID:+s1TuJnu0
こっかいぎじどうをばくはするよ
0189tato
垢版 |
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
0190動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 18:05:20ID:kVfCz8VA0
read.js 全ての処理をさせる どこに置いてもおk
read.html read.jsを読ませるだけ datと同じドメインじゃなきゃ駄目。

read.htmlとdatが同じドメインなら、read.jsがdatと通信しても大丈夫
っていう感じ。
0192tato
垢版 |
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とかですよね?
0195ひろゆき@どうやら管理人 ★
垢版 |
2006/07/28(金) 21:44:51ID:???0?BRZ(4595)
>>192
現状より重くなる予感。。
0197 株価【1100】◆cZfSunOs.U
垢版 |
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 切ってあるとどうしようもないけど......
0200動け動けウゴウゴ2ちゃんねる
垢版 |
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板のことをおいらにいわれてもわからんです。。
0202動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/28(金) 23:50:10ID:E5cyDbY60
read.cgiの負荷を大幅に減らすことが目的なら、
WinIEだけを専用のスクリプトに飛ばせば目標達成かもしれないですね。  (それじゃあ面白くないって?)
0204root▲ ★
垢版 |
2006/07/29(土) 01:15:55ID:???0?PLT(10016)
さてと。

>>193 を、dso あたりに仮に入れてみるとしたら、
.htaccess 的には、どうすればいいのかしら。
0207動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/29(土) 10:22:03ID:vqF7YG+l0
Opera8.54から>>193を見てみたら初回取得時は正常に表示されるけど、
再読み込みもしくは再度開きなおすと読み込み中のまま先に進まなくなった。
0208 株価【1100】◆cZfSunOs.U
垢版 |
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 ヘッダを出力してませんが,そのせいかな......?
0209動け動けウゴウゴ2ちゃんねる
垢版 |
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]

このような感じです。
0210 株価【1100】◆cZfSunOs.U
垢版 |
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 イベントも使ってないし),
どこで入り込んだんだろう......?
もしかして,壺か何かのスクリプトと衝突してる......?
0212root▲ ★
垢版 |
2006/07/29(土) 13:27:00ID:???0?PLT(10017)
>>208
mod_charset_lite って、
Apache 2.2 以降じゃないとだめなんでしたっけ。
0213動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/29(土) 13:31:34ID:vqF7YG+l0
あー、すいません。
テストするときにはUSER.JSを切っていたんですが、
切ってなかったときのエラーログのようです。

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

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

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

今日はもうちょっとしたらお出かけなので、
早くても今夜ぐらいあたりからかなと。
0217ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 15:03:40ID:???0?BRZ(4596)
>>199
どういうふうに使うのか全然わかってなかったり。。。
0218 株価【1100】◆cZfSunOs.U
垢版 |
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>

って入れてもらえばいいかと.
0220動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/29(土) 15:31:35ID:iSW8jgHp0?BRZ(2223)
すれ違いだけども、ime.(nu|st)、落ちまくりなのをなんとかしてほしかったり。
2ちゃんでリダイレクトを用意したりはしないのかしら。
0222ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 16:07:15ID:???0?BRZ(4596)
あいあい
0225動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/29(土) 19:07:06ID:RoQ9c9iw0
これは良いエセAjaxブラウザですね。なかなかいいですね。
でも若干読み込みが遅い気がする・・・
0227動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/29(土) 19:57:11ID:rr/RhnKa0
難しい話は良く判らないけど、このプロジェクトは
普通のブラウザを2ch専ブラ化するっていう認識で
OKなのかな?

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

ひろゆきはそれでいいの?
0233ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 20:36:46ID:???0?BRZ(4596)
おぉ、ほんとだ動いてた。動いてた。
すげー。
0236ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 20:52:12ID:???0?BRZ(4596)
いやぁ、javascriptはとんとわからんですよ。
0238ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 21:04:11ID:???0?BRZ(4596)
>>237
どういうふうにやるんすか?
0243stream ◆PNstream2s
垢版 |
2006/07/29(土) 21:13:48ID:F0BE+JCI0
こうこくgaippaiあるからー
onloadのたいむんぐがむちゃくちゃなよかんです♪
0245stream ◆PNstream2s
垢版 |
2006/07/29(土) 21:28:29ID:F0BE+JCI0
>>243の書き込み失礼しました・・・


んで、IE6だと document.links[0].firstChild.data += location.hash; をコメントアウトしても
IE6だと表示もきちんと?#fefefefeが表示されますね
不思議です。
0246stream ◆PNstream2s
垢版 |
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なはず。
0247ひろゆき@どうやら管理人 ★
垢版 |
2006/07/29(土) 21:34:41ID:???0?BRZ(4596)
おぉー、、解決しましたー。

何がどういう仕組みなのか皆目わからないまま。。。
http://www.ime.nu/tetete#fefefe
0250stream ◆PNstream2s
垢版 |
2006/07/29(土) 21:42:22ID:F0BE+JCI0
わーい酔っ払ってるけどひろゆきの役に立ったと♪

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

>>249
中身と属性が一致するちょきのみ勝手に両方書き換える予感
IE6はセキュリティといい市場2番目に最悪なブラウザな気がしなくもない
0253紅玉
垢版 |
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
でも危機感が募っています。
0254stream ◆PNstream2s
垢版 |
2006/07/29(土) 21:54:41ID:F0BE+JCI0
ネスケ4じゃさすがにAjax関係は対応してないんじゃないかな
0256253 MacOS9.2.2環境
垢版 |
2006/07/29(土) 22:02:43ID:FhPqEwUW0
追加です。

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

wamcom-131-macos9-20030723
かろうじて対応
0260 株価【1100】◆cZfSunOs.U
垢版 |
2006/07/30(日) 01:15:35ID:WxPqGT8x0
お......いない間に ime.nu の方は事が進んでたのね.各位乙ですた.


で,dso でやる時はフィルタ通した dat を mod_cache でキャッシュってのもやって,
さらに黒山羊対策の実験もしてうまくいくなら雪だるまにフィードバック,ってのはどうでしょう
......と思ったけど,mod_cache 使うなら 2.0 系より 2.2 系の方がいいんですよね.う〜む......
0262動け動けウゴウゴ2ちゃんねる
垢版 |
2006/07/30(日) 14:24:39ID:sgRHt0LW0
先生!久しぶりに運用情報に来てみたら面白そうなスレッドを見つけました。
試せるレベルくらいまで進んでますか?
0263ひろゆき@どうやら管理人 ★
垢版 |
2006/07/30(日) 17:25:33ID:???0?BRZ(4603)
>>262
サンプル動いてますよ。
0266 株価【900】◆cZfSunOs.U
垢版 |
2006/08/01(火) 07:12:05ID:SNbQsxKE0
関連キーワードは
----------------------------------------------------------------------
var keywords = ["キーワード1", "キーワード2", "キーワード3"];
----------------------------------------------------------------------
のような形式で返してくれる I/F があると read.html にはふさわしいのかも.
もっとも,これはそのうちどうのこうのって話があったっけ......
0267ひろゆき@どうやら管理人 ★
垢版 |
2006/08/01(火) 09:40:57ID:???0?DIA(30035)
( ̄ー ̄)ニヤリッ
0269root▲ ★
垢版 |
2006/08/01(火) 11:40:03ID:???0?PLT(13231)
どうのこうの、ぼちぼちってかんじですかね。

しかし8月は私の本業が黒焦げ状態だという噂も、、、。
ちなみに8月の夏期休暇はありません(とれません)。むぎゅー。
0271root▲ ★
垢版 |
2006/08/01(火) 11:52:12ID:???0?PLT(13231)
たぶん UA とかで調べて、NN 4.x だったらレガシーな read.cgi にフォールバックするとか、
そういう動作になるんでしょうね。

つまり、JavaScript が動かないクライアントと同じ動作になると。
0272動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/01(火) 12:47:04ID:5eC2PN/s0
2chもajax化するのかあ
将来的に専用ブラウザみたいなこともできるのかな
IDポップアップとか画像プレビューとか
0274動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/01(火) 13:30:45ID:tT304PHv0
Ajaxか
なかなか面白い試みじゃん
0279stream ◆PNstream2s
垢版 |
2006/08/01(火) 17:07:23ID:7tohUCL+0
画像は面白いけど、実際入れるとなると微妙ですねえ(2chがプロキシ建ててくれるならともかく。)
0281 株価【1000】◆cZfSunOs.U
垢版 |
2006/08/01(火) 17:38:01ID:SNbQsxKE0
しばらくしたら外しとこう<画像インライン化
それまでは一時的なデモンストレーションってことでw
0286外野ァァン
垢版 |
2006/08/01(火) 21:03:03ID:trcLaVqn0
せっかくのヒット作なのに
0290紅玉
垢版 |
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に対応していてくれそうですし。
0300 株価【1000】◆cZfSunOs.U
垢版 |
2006/08/01(火) 23:11:47ID:SNbQsxKE0
画像インライン化機能は外しますた......

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

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



ってのはともかく,入れるようになるなら確かにそれも一つの方策かも......
0304root▲ ★
垢版 |
2006/08/02(水) 00:04:00ID:???0?PLT(13231)
PC たたむ前に見たら、早くもご本人からのレスが、、、。

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

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

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

…今日はここまで。おやすみなさい。
0305 株価【900】◆cZfSunOs.U
垢版 |
2006/08/02(水) 00:14:17ID:ctgBOFQy0
>>303 かわいいですね.でも 1U だとまだまだ......

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


# てか,何が起こるのかな......ドラえもんが登場して鯖に入れるように
# スモールライト渡されるとか......
0307ひろゆき@どうやら管理人 ★
垢版 |
2006/08/02(水) 01:44:23ID:???0?DIA(30038)
>>304
いいんでないすかね。
( ̄ー ̄)ニヤリッ
0309動け動けウゴウゴ2ちゃんねる
垢版 |
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|   \    ソ
0310動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/02(水) 04:45:36ID:2IhGNaMD0
>>271
それは考え方が逆だべ。

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

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

と、以前の root 氏なら考えたと思うんだが。
0311p125028003201.ppp.prin.ne.jp
垢版 |
2006/08/02(水) 05:53:40ID:eARyDVLT0
むにゃむにゃ。

>>307
了解です。niyr

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

ま、いっか。
今は二度寝するです。ぐーぐー。
0316 株価【900】◆cZfSunOs.U
垢版 |
2006/08/02(水) 12:43:04ID:ctgBOFQy0
まぁ,メジャーなブラウザを一通りカバーすればシェア的には9割以上は逝くでしょうし.
特に JavaScript のようなものは,作る立場からしても,挙動のよくわからない
マイナーなものまで対処するより,メジャーなところを押さえておけばいいという方が
遙かに楽ではあります......ってことで,動作確認ができたブラウザを
JavaScript 版に回すホワイトリストに入れるって形にすればいいかと.
0320紅玉
垢版 |
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”の方が早いです。
0321動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/02(水) 22:15:31ID:o2uQuvy60
>>310
それじゃread.cgiをすべてのクライアントで一度は叩いちゃうじゃない。
負荷対策にならない。

つーかここまで誰も話を持ち出してないのが不思議だがレス番号指定はどうする
つもりなの
現状ではCPUが貴重で転送料をじゃぶじゃぶ使った方が引き合うのかな
0322stream ◆PNstream2s
垢版 |
2006/08/02(水) 22:18:25ID:3aab7Zck0
いや、Webサーバーの機能使ってread.htmlかread.cgiかを選べるのよ。
0324319
垢版 |
2006/08/02(水) 22:30:26ID:3vaKMYPP0
>>320
いや、>>256で全滅リストにicab3.0が入っていたんで。。。
ここでmozillaというのは1.3.1とwamcomで同じ結果だったからでつ。
もちろん、icabよりmozillaの方が快適でつ。
単なる動作報告のつもりだったんだけど。。。
0325 株価【800】◆cZfSunOs.U
垢版 |
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
0329動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/03(木) 00:58:57ID:EvHMU1Kz0
ちょうど8月だし、毎年恒例の「2ちゃんねる閉鎖危機」を演出しながら
JavaScript版を導入していくのはどうだろう。

・サーバーの負荷で2ちゃんねる閉鎖の危機!
・次々と閉鎖していく掲示板
・そこでJavaScript導入、一気に負荷が16分の一に!
・感動のFLASH作成
・BGM:蛍の光
0331動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/03(木) 01:42:42ID:UC2mE9Vf0
何気に運営来て見たら面白いことになってるし
サンプルすげー
管理人の気まぐれをここまで形にするなんて
あんた達すごいよ感動した
0332 ◆Puttyan8hs
垢版 |
2006/08/03(木) 02:05:22ID:GfgoNoFE0?2BP(239)
ここにいる人たちのスキルってすごいって感じた
自分は最近触れたばっかだからわかんないけど
0334動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/03(木) 03:46:26ID:WFosrDT30
うーむ、スクリプトが何らかの理由によりエラーになるとスレも読めなくなるのか・・・
例外処理である程度は回避可能なのかな
0336紅玉
垢版 |
2006/08/03(木) 11:40:38ID:necJHHiA0
>>324
> いや、>>256で全滅リストにicab3.0が入っていたんで。。。
すんません。たぶん激重だったか何かでダメだと判断したんです。
0337 株価【650】◆cZfSunOs.U
垢版 |
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 で
細工してるわけですが...... まぁロケーションバーから直接入力した場合は
その後にリロードすれば正常に表示されるかと.

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

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

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

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

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


で,read.html はとりあえず dso に突っ込んだら,動作確認とか
ブラウザ振り分けの RewriteRule 考えるとか,そんな感じかな.
0345ひろゆき@どうやら管理人 ★
垢版 |
2006/08/10(木) 22:21:08ID:???0?DIA(30600)
とりあえず、何がネックなんでしたっけ?
0349stream ◆PNstream2s
垢版 |
2006/08/10(木) 22:28:40ID:1zYaYqgP0
どうせdatファイル全部取得しちゃうんだから、無理して全部表示しなくても、
少しずつ表示すれば、ブラウザが重いってのは解消されるのでは?
0350 株価【900】◆cZfSunOs.U
垢版 |
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 待ちってところで......
0352es ◆MUMUMUhnYI
垢版 |
2006/08/10(木) 22:57:13ID:3YV3xQVh0
偉大な管理人からのありがたい指令に基づき、
今日はPCを開かずに休もうと思うのです。はい。
0355 株価【900】◆cZfSunOs.U
垢版 |
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
0356ひろゆき@どうやら管理人 ★
垢版 |
2006/08/11(金) 00:27:45ID:???0?DIA(30601)
dso でテストできる状態って具体的には、
何が必要なんでしょう?
0359 株価【900】◆cZfSunOs.U
垢版 |
2006/08/11(金) 01:12:25ID:hsK705Zz0
>>356
1. むむむさんかひ(ryさんが read.html(やそれに付随する *.js)を
  dso に入れる.さらに,httpd に mod_charset_lite を組み込む(要パッチ).

2. >>301-307 を進めて頂ければ私が(ry
0360ひろゆき@どうやら管理人 ★
垢版 |
2006/08/11(金) 01:33:44ID:???0?DIA(30601)
dsoのサーバ名ってどこなんでしょう?
0369ひろゆき@どうやら管理人 ★
垢版 |
2006/08/11(金) 01:58:23ID:???0?DIA(30601)
メールしましたー。
0371 株価【900】◆cZfSunOs.U
垢版 |
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 も修正が必要ですね.
0372root▲ ★
垢版 |
2006/08/11(金) 11:12:03ID:???0?PLT(15631)
まずは、

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

そんなわけで、権限が必要な作業は、
本日以降たんたんと、ということで。
0374 株価【900】◆cZfSunOs.U
垢版 |
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 でもよさそうということで.
0378root▲ ★
垢版 |
2006/08/12(土) 01:21:25ID:???0?PLT(15631)
んで、入れようと思うのですが、、、。

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

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

うーむ。だとすると、ex11 あたりのほうがいい? < テスト環境
0380 株価【1500】◆cZfSunOs.U
垢版 |
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
0381root▲ ★
垢版 |
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 でもどっちでもいいかとは思うんですが
> (りゃ。

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

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

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

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

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

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

だったはず。

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

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

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

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

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

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


とりあえず頑張ってください
0397動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 03:01:50ID:mm6e11yz0
運営のフリをするrootたんみっけ!
0399root▲ ★
垢版 |
2006/08/13(日) 03:06:57ID:???0?PLT(15631)
mod_charset_lite + patch の組み込みはできた模様。

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

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













     )、._人_人__,.イ.、._人_人_人
   <´ 天狗じゃ、天狗の仕業じゃ! >
    ⌒ v'⌒ヽr -、_  ,r v'⌒ヽr ' ⌒
// // ///:: <   _,ノ`' 、ヽ、_ ノ  ;;;ヽ  //
///// /::::   (y○')`ヽ) ( ´(y○')    ;;|  /
// //,|:::     ( ( /    ヽ) )+     ;| /
/ // |:::     +  ) )|~ ̄ ̄~.|( (       ;;;|// ////
/// :|::       ( (||||! i: |||! !| |) )      ;;;|// ///
////|::::    +   U | |||| !! !!||| :U   ;;; ;;;| ///
////|:::::       | |!!||l ll|| !! !!| |    ;;;;;;| ////
// / ヽ:::::       | ! || | ||!!|    ;;;;;;/// //
// // ゝ:::::::: :   | `ー----−' |__////
0402root▲ ★
垢版 |
2006/08/13(日) 03:16:59ID:???0?PLT(15631)
まずは、dso サーバだけ、
従来のは read-dso.cgi という名前で動くようにした。
0406root▲ ★
垢版 |
2006/08/13(日) 03:35:35ID:???0?PLT(15631)
>>404
動いたようですね。

しかし、これはすごいです。
今日は記念日かな。
0407root▲ ★
垢版 |
2006/08/13(日) 03:37:46ID:???0?PLT(15631)
うぉー、書き込みもできるのか。
これはなかなか。
0411動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 03:42:39ID:amX6z+gg0
すげえ
どうやってるのか分からないけど部分取得にも対応してるのか

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

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

でも、本文欄のは、いろんな意味で残さないほうがいいですね。
0418 株価【1900】◆cZfSunOs.U
垢版 |
2006/08/13(日) 03:54:52ID:cJc+bl4/0
>>416
>でも、本文欄のは、いろんな意味で残さないほうがいいですね。

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

あとは、さくさく進めていけそうな感じ?
0420せっ☆マ ◆wwwwWwWWWw
垢版 |
2006/08/13(日) 03:56:41ID:UnIad/5p0
乙ですお

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

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

ミスかな…
0422せっ☆マ ◆wwwwWwWWWw
垢版 |
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[]
0423 株価【1900】◆cZfSunOs.U
垢版 |
2006/08/13(日) 04:00:47ID:cJc+bl4/0
>>419 ですかね.あとは不具合報告に対処しつつ,対応可能なブラウザとそうでないものの
振り分けを考えていくってかんじですかね.

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

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

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

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

今日はそろそろ、新しい ThinkPad が呼んでいるみたい。
0428root▲ ★
垢版 |
2006/08/13(日) 04:10:32ID:???0?PLT(15631)
read-dso.cgi というのはちとださいかな。
read.so にしておこう。
0429root▲ ★
垢版 |
2006/08/13(日) 04:12:38ID:???0?PLT(15631)
>>428
done.

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


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

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

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

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

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

# そろそろ眠気来たかな。
0436382
垢版 |
2006/08/13(日) 04:40:58ID:4xdXhh4p0
rootタン教えてくだしい
0438 株価【1900】◆cZfSunOs.U
垢版 |
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 への
リンクを入れるとして,どのあたりに入れるのがいいですかね......
0439動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 05:56:02ID:ZPUk9xfD0
>>438
|あと,これでスレの保存をした場合はどちらにしろ外側の html しか保存されず
|中身の dat は保存されないので,,保存に不向きなのは確かですね.
Firefoxだと書いた状態で保存されたので一応表示はできた
(だからスレの保存はできると書いた)んだけど、自分で確認してみた?
0440 株価【1900】◆cZfSunOs.U
垢版 |
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 オフにしてから表示すればいいのかも.
0441動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/13(日) 06:29:34ID:7RtoKTG00
保存っていうリンクを右クリッコ→対象をファイルに保存

じゃないけど、そういう案も考えてみた方がいいかも。
0446root▲ ★
垢版 |
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]
(上のやつ)

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

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

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

そうすると何かとあとあと便利かなと思ってるんだけど…めんどくさい?
0449ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 14:27:07ID:???0?DIA(30602)
>>443
したら、同じ名前でいいんでないすか?
0451ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 14:42:05ID:???0?DIA(30602)
中身も同じものなんでしょ?
0452せっ☆マ ◆wwwwWwWWWw
垢版 |
2006/08/13(日) 14:44:41ID:OefIEdBp0
>>451
read.cgiでみんな慣れてる→ログとかも参照しやすい?分かりやすい?
 ↓
 ↓
JavaScript使用不可<使用可能

なのかな?
0453せっ☆マ ◆wwwwWwWWWw
垢版 |
2006/08/13(日) 14:54:06ID:OefIEdBp0
ようするに今まで慣れてるものにより一般的なものを対応させておいた方が何かと不具合起きにくいってことを言いたかった。
分かりにくくてすまn
0455 株価【2300】◆cZfSunOs.U
垢版 |
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 なら動くんですが......
0458 株価【2300】◆cZfSunOs.U
垢版 |
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
0459 [´・ω・`] 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)
0460 株価【2300】◆cZfSunOs.U
垢版 |
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 で対応してない正規表現はどれなんだろう......
0461 株価【2300】◆cZfSunOs.U
垢版 |
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
0469 株価【1900】◆cZfSunOs.U
垢版 |
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%
0472 株価【1900】◆cZfSunOs.U
垢版 |
2006/08/13(日) 21:08:17ID:cJc+bl4/0
>>470-471 なるほど,ありがとうございます.

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

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

このへんは、考え方次第ですかね。
0475 株価【1900】◆cZfSunOs.U
垢版 |
2006/08/13(日) 21:17:31ID:cJc+bl4/0
>>474 GNU iconv は常用してないので詳しくないですが,BE の dat を
iconv にかけてた時にどこかのスレでどなたかがパッチを提示してませんでしたっけ?
バージョンアップだけで済むのか,それともさらにパッチが必要なのか,詳しくないので......
0477root▲ ★
垢版 |
2006/08/13(日) 21:29:03ID:???0?PLT(15642)
ってことは、

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

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

ぼちぼち、やってみますかね。
0479root▲ ★
垢版 |
2006/08/13(日) 21:32:27ID:???0?PLT(15642)
WITH_EXTRA_PATCHES=yes で ports から libiconv を作ると、
>>478 のは、入るみたい。
0480root▲ ★
垢版 |
2006/08/13(日) 21:35:05ID:???0?PLT(15642)
てなわけで >>478 ありの iconv に入れ替えるのは、今日寝るまでにやるです。
bbs.cgi は、気が向いたら取り組むぐらいで。
0481 [´・ω・`] 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)
0482root▲ ★
垢版 |
2006/08/13(日) 22:10:27ID:???0?PLT(15642)
>>481
テクニカルには可能です。

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

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

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

あと,JavaScript 版については /test/read.html#...... という URL がデフォルトに
なる方向なのかも知れませんが,従来通りの /test/read.cgi/...... という URL でも
アクセス可能な状態は保たれるようにするということで.
0484 株価【1900】◆cZfSunOs.U
垢版 |
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 の段階で振り分けるとか......とはいえ,これも大変か......
0485root▲ ★
垢版 |
2006/08/13(日) 22:43:17ID:???0?PLT(15642)
WITH_EXTRA_PATCHES=yes で libiconv を作り直し、
libiconv に依存している ports を作り直しました。

mod_charset_lite のパッチ版も、作り直しました。
0487root▲ ★
垢版 |
2006/08/13(日) 22:53:27ID:???0?PLT(15647)
で、bbs.cgi ごにょごにょして、
read.cgi を従来バージョンにするのは、
ちと、明日以降にじっくりとというかんじで。
0488 株価【1900】◆cZfSunOs.U
垢版 |
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
>なおた

ようです.
0490ひろゆき@どうやら管理人 ★
垢版 |
2006/08/13(日) 23:49:21ID:???0?DIA(30602)
文字コード変換のライブラリってjsではないんですかねぇ。。
0493ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 00:18:48ID:???0?DIA(30602)
ら、、来年には。。
0496stream ◆PNstream2s
垢版 |
2006/08/14(月) 00:43:14ID:6OcOUbMJO
JavaScriptには生のバイト列をサーバーから受信する方法はなさそうですから、変換も何もないかと思われる。
0499動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/14(月) 00:49:57ID:LiQ4r6Ez0
少なくとも、文字化けしないと分かってるブラウザは /dat-utf8 じゃなくて /dat を
使うようにできませんか。
0503動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/14(月) 01:11:11ID:LiQ4r6Ez0
確か /dat を直接使えば変換の必要はないけどそれだとキャッシュから読み取ったとき
IE6 が文字化けするんだっけ? で>>499と。
0505ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 01:45:14ID:???0?DIA(30602)
文字コードの変換コストが高い気がするのです。

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

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

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

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

# ただ、今の standard banana でいきなり圧縮やめると、
# 10Mbps を超えてしまうやつが、ぼろぼろ出てくるかもしれないですが。
0510 株価【1600】◆cZfSunOs.U
垢版 |
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 を使うことにすれば,黒山羊等の心配は無用ですが.
0512ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 14:22:32ID:???0?DIA(30602)
圧縮ははずす方向だった予感。

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

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

>>512 第二段落

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

>>514
そうでしたっけか。< 差分ができない
そのこころって、なんでしたっけ。
0518ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 14:42:53ID:???0?DIA(30602)
差分は仕様がよくわからないと。。
0519stream ◆PNstream2s
垢版 |
2006/08/14(月) 14:42:55ID:6OcOUbMJO
なんか勘違いしてる見たいですけど、差分転送なんて有り得ないですよ。IE6が文字化けするのは、If-Modified-SinceとかIf-None-Matchを使った「条件付きGET」の結果、304が帰ってきた場合です。
0520ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 14:44:03ID:???0?DIA(30602)
>差分転送なんて有り得ないですよ
つまり差分転送はjsだと出来ないってことですか?

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

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

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

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


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

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

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

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

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


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

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

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

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

ただ,文字コード変換は IE のためだけにわざわざやっているんで,
>>510 のようにすることはできます.
0538ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 16:10:15ID:???0?DIA(30602)
おぉ?IEは以外は文字コード変換しなくても
大丈夫なんですか?
0539動け動けウゴウゴ2ちゃんねる
垢版 |
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
0540動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/14(月) 16:12:30ID:pfMHSnaj0
(1)datの先頭に<!--あ-->等の文字を入れておく
(2)まずはsjis版のdatを取得に行く
 先頭の<!--あ-->が化けていない場合は新規取得っぽいのでそのまま表示
 <!--あ-->が化けている場合はキャッシュっぽいのでutf-8版を取り直す

こんな感じで文字コード変換の回数を減らせるかな。
0542root▲ ★
垢版 |
2006/08/14(月) 16:15:07ID:???0?PLT(15697)
>>540
「美乳の手法」ってやつでしたっけ。
ただし「美乳」は、euc-jp の時みたいですけど。
0544ひろゆき@どうやら管理人 ★
垢版 |
2006/08/14(月) 16:18:00ID:???0?DIA(30602)
IEのバージョンによってOKだったりするんですかね?
0547 株価【1600】◆cZfSunOs.U
垢版 |
2006/08/14(月) 16:21:16ID:WxMZYEQv0
>>540 それだと,IE の場合キャッシュを使わず毎回サーバから取ってくるのと
変わらない,っていうか dat の仕様変更になるんで各方面に与える影響が......

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

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

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

・・・混乱してきた。

どうせIE7で直るなら、変な小細工を考えないほうがいいですね。
0552 株価【1600】◆cZfSunOs.U
垢版 |
2006/08/14(月) 16:56:23ID:WxMZYEQv0
>>118(って今はないのかな?)を IE 7 で見てもらって問題ないなら
文字コード変換かけるのは IE 6 限定ってことでもいいかもですね.
0554動け動けウゴウゴ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以外たぶん大丈夫になる。
0555動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/14(月) 17:36:00ID:fNT1qkg10
まずはSJISのdatを取得して、化けてる(304でキャッシュを開いてる)時だけUTF8版を取りに行く。
更新がずっと無ければUTF8版のキャッシュが表示される。

2回のリロードごとに更新があると効率が悪い。
0558 株価【1600】◆cZfSunOs.U
垢版 |
2006/08/15(火) 00:38:31ID:ojmXh8q60
Shift JIS のままの dat を取ってくるなら,>>510 の設定を dso に入れてほしいと......

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

とりあえず,しばらくの間 IE 6 も含めすべて Shift JIS の dat を取ってくる形にします.
IE 6 の問題体験ツアーってことでw
0563動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 01:05:26ID:qeiAdM0E0
なるほど。リロードするとおもくそ化けますた@IE6
Firefox 1.5.0.6では問題なし
ではリブートしてIE7で試してみますノシ
0567 株価【1600】◆cZfSunOs.U
垢版 |
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 限定でもよさそうかな.
0571 株価【1600】◆cZfSunOs.U
垢版 |
2006/08/15(火) 01:36:07ID:ojmXh8q60
>>568 まぁ read.html の対象外となっても決して利用不能になるわけではなく,
単に従来式の read.cgi に振り分けることになるだけなんで......

>>570 それって,かなり重いって話もあるようですが......
0572動け動けウゴウゴ2ちゃんねる
垢版 |
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 を全廃できる?
0574動け動けウゴウゴ2ちゃんねる
垢版 |
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

処理自体はこのぐらい。
0576動け動けウゴウゴ2ちゃんねる
垢版 |
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
ここの手法を用いて逐次表示にして欲しいところ。

文字化けとかは正直よくわからん
0580動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 02:09:18ID:qeiAdM0E0
>>574
あ、VBじゃなくてVBSか。VBSにはStrConvはないのね。
どうせIE専用なんだからVBScriptで関数作ってJavaScriptから呼べばいいと思われ
0582 株価【1600】◆cZfSunOs.U
垢版 |
2006/08/15(火) 02:19:16ID:ojmXh8q60
でもまぁ,IE 7 で問題が解消するとなると,いずれ IE 7 の割合が増えて
IE 6 の割合が減るなら,mod_charset_lite 利用による負荷は時間が解決してくれる
はずってことで,あえて複雑なことをするまでもないかな,って気もします.
フィルタ通すことによる負荷なら,上の方でも言ってますが mod_deflate による
gzip 圧縮の方がよほど重いんで.
0583root▲ ★
垢版 |
2006/08/15(火) 02:25:05ID:???0?PLT(15700)
>>582 に同意ですね。
IE6 は「長いもの」なので、特別扱いでもまぁしょうがないのかなと。
0585ひろゆき@どうやら管理人 ★
垢版 |
2006/08/15(火) 07:01:25ID:???0?DIA(30604)
んでは、IE6のをdat-utf8にしてみるってことで、
あと解決しなきゃいけない問題ってどんなのでしょう?
0586動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 09:04:39ID:i2D78TlA0
「書き込みました」の画面に書き込んだ投稿の内容を埋めておけば、
書き込み後にdatを再取得する手間が省けるかなあ。

でも、同時に複数書き込みがあったとき(1000ゲットなど)にレス番号表示がおかしくなるかも。
0589root▲ ★
垢版 |
2006/08/15(火) 11:15:19ID:???0?PLT(15700)
さて、ぼちぼち dso サーバの bbs.cgi が吐くリンクを
read.html にしてみようかなと思うわけですが、
単に、

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

を、

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

に変換すればいいのかしら。
0590 株価【750】◆cZfSunOs.U
垢版 |
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 の仕様がちゃんと固まってからの方がいいでしょうけど).
0592root▲ ★
垢版 |
2006/08/15(火) 13:29:16ID:???0?PLT(15700)
>>590
ふむふむ。

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

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

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

>>591
それはあるですね。
0593動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 13:32:04ID:qeiAdM0E0
subbackのリンクは標準では従来通りにして、JavaScriptで
(onclickとかonloadを見張って)差し替えたらどうですか?
どうせJavaScriptが有効でないとread.htmlは使えないんだし
>>591の問題も解決する。
0594動け動けウゴウゴ2ちゃんねる
垢版 |
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>
0595root▲ ★
垢版 |
2006/08/15(火) 13:54:27ID:???0
>>593
面白いかも。

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

subback の頭に入れればいいのかしら。
0598root▲ ★
垢版 |
2006/08/15(火) 14:04:26ID:???0
subback.html はこれでやってみるとして、
index.html は、どんなかんじになるのかしら。同じでいいのかな。
0599動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 14:08:05ID:qeiAdM0E0
>>598
試してみましたけどindex.htmlの場合は
<a href="#1">
のリンクを踏んだときの動作が微妙ですね。ちょっと改良が必要かも。
0600動け動けウゴウゴ2ちゃんねる
垢版 |
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>
0603root▲ ★
垢版 |
2006/08/15(火) 14:14:46ID:???0
どもです。

同じものを両方に入れればいい(サブルーチン一つ書けばいい)のかしら。
0605root▲ ★
垢版 |
2006/08/15(火) 14:32:20ID:???0?PLT(15700)
dso に入れてみた。< bbs.cgi

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

を、コメントアウトした。
0611root▲ ★
垢版 |
2006/08/15(火) 14:40:58ID:???0?PLT(15700)
いい感じみたいですね。
リンク押しても紫にならないけど(それはしょうがないか)。
0613root▲ ★
垢版 |
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 はなしにします。
0614root▲ ★
垢版 |
2006/08/15(火) 14:48:54ID:???0?PLT(15700)
>>613
これで、普通に read.cgi は read.cgi として起動するようになった。
0615動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 14:49:46ID:D0hTYs/40
未読既読はスレにはられるやつにも影響あるなあ...

IEが落ちる
フリーズしたようになる(>>576)
戻るがおかしい
は直して欲しいな。
0619動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 18:40:01ID:D0hTYs/40
>>600だと既読になるのは#のほうだから未読既読は解決しないのか。
あとIEだとコンテキストメニューから開くとonclickが呼ばれない。
0621動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 19:24:07ID:i2D78TlA0
ime.nuみたいなリダイレクト専用サーバーを立ててそこにリンクを張るとか。
(クリックさせないで一瞬で飛ばす)


で、そのサーバーがこけるたびに大混乱
0622動け動けウゴウゴ2ちゃんねる
垢版 |
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日になったしいらないよね? とか言ってみる。
0623動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/15(火) 23:46:19ID:Vjx6htrB0
ずーっと気になってし、言いだしっぺも自覚してると思うんだけど
read.html見たいな動的ページって検索エンジンに拾って貰えない気がするんだ。
そのへんはおkなの?
read.cgiが生きてる限り大丈夫だけど、ページランクは下がるだろうし。
0625root▲ ★
垢版 |
2006/08/15(火) 23:59:54ID:???0?PLT(15700)
>>623
read.cgi を殺す気は(私は今のところ)ないですね。

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

というか >>622 により、どうなるんでしたっけ。
素人質問でごめんなさい。
0626 株価【760】◆cZfSunOs.U
垢版 |
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 ってことにしなきゃですね.
0628root▲ ★
垢版 |
2006/08/16(水) 00:13:43ID:???0?PLT(15700)
>>626
おつです。

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

で、>>626 の最後の2行をうまく実装する必要があると。
0632 株価【760】◆cZfSunOs.U
垢版 |
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 にジャンプするのでは?
名前欄とかはブラウザのフォームコンプリート機能を使うとかで......
0633root▲ ★
垢版 |
2006/08/16(水) 01:42:09ID:???0?PLT(15700)
>>632
なるほど、index.html でうまく動かないのは、そういうことですか。

とりあえず、ちと食事。
0636root▲ ★
垢版 |
2006/08/16(水) 01:54:49ID:???0?PLT(15700)
とりあえず、index.html はさっきまでのものに戻しておきます。
0639 株価【760】◆cZfSunOs.U
垢版 |
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 ってことで.
0641 株価【765】◆cZfSunOs.U
垢版 |
2006/08/16(水) 02:49:54ID:/guPVXYD0
>>640 ん? RewriteCond / RewriteRule 使えば,subback.html 中の URL は
read.cgi/... のまま(従来通り)で read.html#/... に飛ばせる,
で read.html 対応ブラウザだけ RewriteCond で判定して飛ばせば
検索ロボットはそのまま read.cgi に逝くかと.
0642動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/16(水) 02:51:30ID:LnZ4IU4t0
> ただ,User-Agent の判定はできても JavaScript の on / off の判定は
> サーバ側ではできないので,対応ブラウザでも JavaScript off の場合の
は?
0643 株価【765】◆cZfSunOs.U
垢版 |
2006/08/16(水) 03:08:49ID:/guPVXYD0
>>642 あぁ,そうか...... となると,subback.html とかには JavaScript 入れて,
Referer が subback.html とか以外の場合に RewriteRule が有効になるようにすればいいのかな......
0644 株価【765】◆cZfSunOs.U
垢版 |
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 形式をデフォルトに
した方がいいのかなぁ......
0645root▲ ★
垢版 |
2006/08/16(水) 11:54:13ID:???0?PLT(15700)
>>644
> ちょいとこちらで dso の bbs.cgi いじってみますた.

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

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

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

現状の「サーバ資源の逼迫度合い」を考えたら、
PATH_INFO 形式でもいいのかもしれないですね。
0648 株価【765】◆cZfSunOs.U
垢版 |
2006/08/16(水) 14:51:25ID:/guPVXYD0
>>645-647 手を付けていいものか迷いもあったんですが,
手っ取り早く結果を見たかったんでいじっちゃいました.
諸々のことについては気を付けますです,はい......

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

あとはここでいろいろ言わなくても、実例(私とか)がここにはいっぱいいるし。
0653stream ◆PNstream2s
垢版 |
2006/08/16(水) 20:55:10ID:Dx5C0gJy0
外側のHTMLが文字化けしてる・・・。中のdatは無事、落ちることもないです。
IE 7.0.5450.4 (Beta 3)

(てかXML宣言のencodingを読んでないのか?)
0659ノtasukeruyo
垢版 |
2006/08/16(水) 22:32:44ID:9EA3K/ii0


Opera/8.54 (Windows NT 5.1; U; ja)
0662 ◆TWARamEjuA
垢版 |
2006/08/16(水) 22:50:11ID:77FAh90w0?BRZ(3010)
javascript:void%200;
(´・ω・`)ショボーン

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

>>661 Firefox は,JavaScript 処理に時間がかかるとそのダイアログが出ますね.
0667動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/16(水) 23:55:45ID:ywphgZ25O
IE6 WinXP SP2 Pentium4 2.4G
658を開くとCPUが100%になって固まるorz
Operaも固まりはしないけど、スクロールしなくても常に80%以上orz
困った…

DSBLに引っ掛かったので携帯からカキコ
0668ノtasukeruyo
垢版 |
2006/08/17(木) 16:36:22ID:q2qdvPTD0
>>658見ても特に大丈夫でした。
スペックはセレロン2.0GHzメモリ512MB
Monazilla/1.00 (JaneStyle/2.41)
0669ノtasukeruyo
垢版 |
2006/08/17(木) 16:38:50ID:q2qdvPTD0?2BP(103)
やべ、専ブラからだったorz
Opera/9.01 (Windows NT 5.0; U; ja)
0671動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/18(金) 05:08:21ID:2vKSSdJ50?2BP(50)
そんな事を画策するまでもなく、多くの人はIEの初期設定のままで、
あんなことやこんなことができてしまうのです。
と、2chの穴を突いた経験談から。
0673ひろゆき@どうやら管理人 ★
垢版 |
2006/08/20(日) 00:53:18ID:???0?DIA(30710)
どうすか。どうすか。
0682ひろゆき@どうやら管理人 ★
垢版 |
2006/08/20(日) 01:04:52ID:???0?DIA(30710)
斜体はたしかに読みづらいすね。

l50をつけなくても動くようにしたほうがいい予感です。
0683 株価【760】 ◆cZfSunOs.U
垢版 |
2006/08/20(日) 01:05:43ID:Xm+GrVIr0
まぁ,実用化するならブラウザの振り分けも決めなきゃならないってことで,
dso も tasukeruyo を有効にしてもらった方がいいのかな.
0686 [´・ω・`] P222013037233.ppp.prin.ne.jp
垢版 |
2006/08/20(日) 01:08:34ID:wuf7kbVG0?DIA(41778)
>>681
そっか。

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

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

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

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

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

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

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

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

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

>>689 つまり,BE チェックで非表示にしたレスでもイタリックにしない,
って意味ですか?
0694 株価【760】 ◆cZfSunOs.U
垢版 |
2006/08/20(日) 01:38:28ID:Xm+GrVIr0
>>693 それがエンバグしてた部分で......直しますた.
下一行は了解です.これは be.js 側ですね.
0696root▲ ★
垢版 |
2006/08/20(日) 01:47:03ID:???0?PLT(15700)
で、be.js を更新してくるです。
dso にあるやつを入れればいいのかしら。
0700root▲ ★
垢版 |
2006/08/20(日) 01:51:52ID:???0?PLT(15700)
>>697
いや、モバイル系は prin と IIJmio 使っているので、
もろに該当です(困っているです)。
0703root▲ ★
垢版 |
2006/08/20(日) 02:07:15ID:???0?PLT(15700)
>>702
> ただ,イタリックを変えるとか色を変えるとかで
> 再びお手数をおかけするかもですが......

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

色については、その道のかたがやってくれるかなと。
ということで、今日の私はそろそろおひらき。
0704 株価【760】 ◆cZfSunOs.U
垢版 |
2006/08/20(日) 07:03:30ID:Xm+GrVIr0
非表示レスはイタリックの代わりに背景をグレーにしますた.
色は http://mumumu.mu/img/2bp/ を一応真似たつもり.
ただ,www2 のは自分では入れ替えられないのでとりあえず
一時的に dso のを読み込むようにしますた.
0708 株価【710】 ◆cZfSunOs.U
垢版 |
2006/08/22(火) 21:34:47ID:OG147ChH0
http://dso.2ch.net/myanmar/subback.html

IE 6 で見ると,スレタイが URL に化けちゃってる箇所があるような......
上の方でやってた ime.nu の時と同じバグ(a.href を書き換えると
中身のテキストも書き換わっちゃう)が顕在化してるのかな?
0709 株価【710】 ◆cZfSunOs.U
垢版 |
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 ? "/" : ""); });
0714root▲ ★
垢版 |
2006/08/25(金) 01:24:08ID:???0?PLT(15700)
>>713
PATH_INFO がデフォルトになったということは、
www2 に置いてある js も、更新が必要なのかしら。
0715 株価【850】 ◆cZfSunOs.U
垢版 |
2006/08/25(金) 01:32:12ID:BlMYL2I00
>>714 be.js には影響なしです.subback.html / index.html の方を揃えてもらえば
PATH_INFO 形式デフォルト化は完了ってことで.
0716root▲ ★
垢版 |
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 さんのほうで、ごにょごにょしていただけると助かります。

問題がなければ、オリジナルに反映しておくです。
0720root▲ ★
垢版 |
2006/08/25(金) 16:39:25ID:???0?PLT(15700)
そんなわけで「2ちゃんねる」リンクがついたので、
read.html でも対応すると、よいと思うのです。
0723動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/26(土) 01:50:29ID:P5UFM7680
レス数によっては、[全部読む]がやっぱり重いね。
[全部読む]でも、一気に表示しないで、だんだんとレス追加みたいな感じのが良いのかな。
続きを読むをクリックすると、レスが追加されてく感じ。

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

そういう方がいいという人は,上の方の「1- 101- 201-」とか
下の方の「前100 次100」を利用してもらうということで.
「全部」で全部表示されないというのも,看板に偽りありという
気がしないでもないんで......
「大きなスレで『全部』は重いですよ」というのは JavaScript 版での
注意事項として周知する方向で.
0725 株価【850】 ◆cZfSunOs.U
垢版 |
2006/08/26(土) 02:48:42ID:j4drswue0
「全部」をクリックしたら警告が出るようにしてみますた.
(read.js を分離したのでキャッシュクリアとかしないと反映されないかも)
0730 株価【850】 ◆cZfSunOs.U
垢版 |
2006/08/26(土) 10:29:37ID:j4drswue0
警告出すのは,レス数が 400 以上またはサイズが 250 kB 以上の場合だけにしますた.
0731 株価【900】 ◆cZfSunOs.U
垢版 |
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;
    }
0733ひろゆき@どうやら管理人 ★
垢版 |
2006/08/27(日) 21:55:05ID:???0?DIA(30718)
うほ。
0736動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/28(月) 13:30:57ID:VbslbRUI0
読み込み完了するまでスレの正体がわからないのはどうなんだろう
http://dso.2ch.net/test/read.html/myanmar/1155416372/

あとさ、たまにスレにたくさんレスがついてて流し読みしながらレス書くときに
書き込み欄が一番下にあると参照しながら書けないから
今まではスレをもういっこ別窓で開いてレス書いたりしてたけど
これ導入するんだったら書き込み欄とメッセージは別フレームみたいに出来ないかね
0737 株価【760】◆cZfSunOs.U
垢版 |
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 以外を使って下さい」って形でもいいなら
単純明快にできそうですが.
0738ひろゆき@どうやら管理人 ★
垢版 |
2006/08/28(月) 17:44:26ID:???0?DIA(30719)
ライブなdatが存在しない場合は、read.cgiにリダイレクトしちゃうとか。。
0740 株価【760】◆cZfSunOs.U
垢版 |
2006/08/28(月) 19:40:38ID:aw0giLTu0
>>738 そういうのも一案ですが......

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

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

のようなことをすれば,read.html のみならず雪だるまの read.cgi で
過去ログの存在を認識できない問題もついでに解決できるかも知れない予感......
0741ひろゆき@どうやら管理人 ★
垢版 |
2006/08/28(月) 19:48:23ID:???0?DIA(30719)
それをやっちゃうと、結局処理が挟まっちゃうので、
.htmlにしてるメリットが薄れませんか?
0743 株価【760】◆cZfSunOs.U
垢版 |
2006/08/28(月) 19:53:50ID:aw0giLTu0
>>741 >>742 の通りで,dat が存在しない場合(普通なら "404 Not Found"
が返る場合)のみ DSO プログラムに振られるってことで.
0744ひろゆき@どうやら管理人 ★
垢版 |
2006/08/28(月) 20:59:18ID:???0?DIA(30719)
おぉ、、DSOすげー。
んでは、それでいいと思いますー。
0749 株価【860】◆cZfSunOs.U
垢版 |
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 に突っ込んであります.
0750root▲ ★
垢版 |
2006/08/29(火) 17:52:27ID:???0?PLT(15702)
>>749
/var/tmp の下は激しくいまいちなので、
home directory 配下のある場所に mv しました。

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

# 実は,個人環境では /var/tmp が全然 temporary じゃない状態になってたりします......w
0752動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/30(水) 01:28:42ID:WivvJ1bL0
専ブラの話だけど、スレが無い時のステータスコードを302で決めちゃってるのが
多いのかしらね。
以前も、新仕様鯖だったかで、404になるのに対応できないブラが右往左往
していたっけね。
(ルート付きを始めた時だっけ?)
0754 株価【900】◆cZfSunOs.U
垢版 |
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 ドメインの鯖もないとダメポな予感......
0756 株価【900】◆cZfSunOs.U
垢版 |
2006/08/30(水) 17:18:32ID:cTJmxtft0
>>755 というか,302 のジャンプ先にある live.html を表示しても仕方ないんで......
要は read.cgi と同様に,ライブな dat が存在しない場合に過去ログの有無を調べ,
過去ログがある場合に最初と最後のレスだけ抜き出して表示する,ってのが目的なんで.

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

>●ログイン
2chの鯖を介さずにブラウザ側で直接ログインできるならいいけど
そうじゃないならちょっと・・・
0758動け動けウゴウゴ2ちゃんねる
垢版 |
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よりずっと大変でしょうが)
0759 株価【900】◆cZfSunOs.U
垢版 |
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 モードで追記してるだけなのでオンメモリでは管理してません.
0760動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/30(水) 20:04:44ID:+7rDruHP0
「差分取得」ではなく「部分取得」のつもりだったのですが。
、、と、もしかして、
既に現状のread.htmlが、リクエストのURIを解析して
.dat全体の中から必要な部分だけを転送するようになっているのですかね。

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

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

それから,書き込みとの関連の薄い処理まで bbsd にやらせることを
考えるぐらいなら,フロント側で mod_cache を有効化するなどを
やる方が先決じゃないかと.bbsd の仕事を増やすというのは
すなわちバックエンド側の仕事を増やすということにもなりますし.
0765 株価【900】◆cZfSunOs.U
垢版 |
2006/08/30(水) 20:50:36ID:cTJmxtft0
>>763 専ブラは全部 Monazilla/* っていう User-Agent なんでしょうか?
それなら確かにその方がすっきりしますが......

>>764 個人的には,dat が存在しないのは 302 の場合だけという決めうちは
手抜きだなぁ,そういう決めうちプログラムの側が是正されるべきだよなぁ,
と確かに思うんですが,かといって経過措置も何も考えずにやると
いろいろ混乱を来しそうで......
0768動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/30(水) 21:32:06ID:WivvJ1bL0
> User-Agent
通常のdat読みでは義務ではありませんが、以前にはMonazilla/1.00だけが
dat読みを許されていたこともあり、現在でも非常に強く推奨されており、
実際、ほとんど(おそらく全て)がそうなっています。
ちなみに、●使用ではUAが厳しく指定されています。
0770 株価【900】◆cZfSunOs.U
垢版 |
2006/08/30(水) 22:08:51ID:cTJmxtft0
>>767 多くのケースでそうかも知れませんが,スレ移動で今までなかった dat が出現するとか,
dat 落ちしたのが復活するとか,ということもまれにない訳でもないかと......

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

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

*.datの取得に関しては「UAでMonazillaを返してこないのは、専用ブラジャー以外」と決め込んでしまって良いんじゃないかな。
・・・を前提にしつつHTTP仕様にも沿って欲しいよなぁとかとか(どっちやねん)
0775動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/30(水) 23:49:20ID:WivvJ1bL0
ああそうか、Monazillaは302にするということは、pastdat.soを使わないということであり、
サーバ側の処理を省くことになる、という2ch側の理由もありえるのか。
0777 株価【900】◆cZfSunOs.U
垢版 |
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 が過去ログの存在を認識できない問題への対処というのも
視野に入れてるんで......
0778動け動けウゴウゴ2ちゃんねる
垢版 |
2006/08/31(木) 01:51:06ID:kQJMQQfh0
> Monazilla の判定は pastdat.so 内でやってます.
そなんすかー。
2ch側が積極対応する口実を見っけたと思ったのにー。

ああでも、過去ログの情報でdat開くよりは、単に302だけの方が軽いかな、
とかなんとかまだこだわってみる。
0779 株価【900】◆cZfSunOs.U
垢版 |
2006/08/31(木) 02:14:45ID:deFQfP2p0
>>778 まぁ,Monazilla 以外の User-Agent の専ブラで悪影響が出るのがあったら
その時にまた対処するってことで......
0780 株価【700】◆cZfSunOs.U
垢版 |
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]
----------------------------------------------------------------------
0782 株価【810】◆cZfSunOs.U
垢版 |
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 実験中」とか入れといてもいいのかも.
0783ひろゆき@どうやら管理人 ★
垢版 |
2006/09/05(火) 13:51:45ID:???0?DIA(33396)
blackgoatとか、read.htmlとかで共有datスペースを作ったほうが
効率いいのかなぁ、、とか思ったです。
0784 株価【810】◆cZfSunOs.U
垢版 |
2006/09/05(火) 16:03:05ID:h9IMlQTY0
>>783 そういうことですか.アイデア的には面白そうですが,
現在独立してる各サーバを dat スペースを共有する形に再編するのは
結構大がかりな作業になりそうなのと,以前雪だるまで NFS 使ってた
時のように虫踏んで苦しむことにならないか,ってあたりが課題かもですね.
FreeBSD だと GEOM gate とか使うことになるのかな......?
0786root▲ ★
垢版 |
2006/09/05(火) 16:31:05ID:???0?PLT(15755)
>>784
そのへんは、、、。send-pr しまくりかしら。

とりあえず hrs さんにしかられない方向で。
0787動け動けウゴウゴ2ちゃんねる
垢版 |
2006/09/14(木) 19:30:15ID:6gFSb2eF0
早くVIPにこれ導入してくれよ
0789動け動けウゴウゴ2ちゃんねる
垢版 |
2006/09/14(木) 23:20:04ID:zBxU9b520
時代の先を目指しているようで
実は時代と逆行しているような気がするのは気のせいだろうか。
でも出来上がりは楽しみだな。
0790 株価【1100】◆cZfSunOs.U
垢版 |
2006/09/14(木) 23:45:05ID:r7avOwLH0
まぁ,一応動く形になってるという意味ではできてないというわけでもないとは思いますが,
何かきっかけがあれば動き出すかも,今はそのきっかけ待ちという状態かな......
0792 株価【1100】◆cZfSunOs.U
垢版 |
2006/09/14(木) 23:56:31ID:r7avOwLH0
まぁ,dso 以外の鯖でも動かすには他の鯖にこれを入れられる人が動いてくれることも前提なんで......
0793 株価【1200】◆cZfSunOs.U
垢版 |
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>
0794 株価【1200】◆cZfSunOs.U
垢版 |
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>
0795stream ◆PNstream2s
垢版 |
2006/09/16(土) 08:11:45ID:9F9uonu60
そろそろexがつくサーバーで試してみましょうぜ
0808 株価【900】◆cZfSunOs.U
垢版 |
2006/09/21(木) 06:16:26ID:GJ8CDtb/0
ex 系もいいですが,さらにそれ以外も付け加えるとすれば,read.cgi が
止められてる鯖とか LA が上昇して人大杉になりやすい鯖とかもですかね.
そのあたりは,鯖の状況も見ながらってことになるでしょうけど.
あと,BE 板がある etc4 とかも...... be.js には旧 BE 板の機能継承という
側面もありますし,さらに dso と同一鯖なので面倒見やすいということも.


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

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

ってのもありますが,これは >>266 のように JavaScript 変数として
渡してもらう形にすればいいかと.いわゆる JSON ってやつかな.
0811動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/02(木) 11:18:26ID:j3v9PXo60
そういえば、過去ログのようなhtmlファイルを最初から作っていく事で
read.cgiを使わなくする計画とかもあったよね。大分前に。
0812aasdasd
垢版 |
2006/11/04(土) 13:22:00ID:eEKXms2N0
asda dawefhawliufh lawg agr awg a
0816動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/06(月) 18:40:12ID:4ce9bvrW0
既にPHPに変えたところでパフォーマンスダウンにしかならないところまで登りつめてるんだよな。
read.cgiってすげーよな。UNIX板ありがとうなんて言ってた頃のあれの面影も残ってねぇw
0817動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/06(月) 19:45:49ID:/RmElgxW0
cgiだった頃のソース放出したりすると差し障りあるのかな?
それがC言語版なんかだったりすると互換板的にスゲェ需要あるんじゃ。
0820 ◆TWARamEjuA
垢版 |
2006/11/06(月) 22:09:34ID:6HE/osbR0?BRZ(6667)
>>819
いやあのだから、、、(照)
ttp://ja.wikipedia.org/wiki/Common_Gateway_Interface
この辺とか熟読♪
0822 ◆TWARamEjuA
垢版 |
2006/11/06(月) 23:49:37ID:6HE/osbR0?BRZ(6667)
>>821
でしたらこちらをどぞー♪
ttp://httpd.apache.org/docs/2.2/ja/dso.html

CGIとは違う方向に持って行くんだもん(照)
0825動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/09(木) 11:54:26ID:DGHujHbV0
>>1
プログラム板でやれ
0826動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/09(木) 13:35:16ID:lhyl8j7NO
動的にpdfを生成すればいいんじゃね?
0834動け動けウゴウゴ2ちゃんねる
垢版 |
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
0835 株価【1060】◆cZfSunOs.U
垢版 |
2006/11/15(水) 22:56:04ID:PWj5HIW10
>>834 そういうのがあるんですか.ただ,ローカルファイルへの保存に関しては
例えば Firefox の完全モードでの保存だと HTML の構造自体を変えてしまうだとか,
オンラインでの表示よりもいろいろ考慮しなければならないことも増えてくるので,
とりあえずは従来版 read.cgi の方でやってもらうということで......
0839root▲ ★
垢版 |
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 の該当箇所をコメントじゃなくす … まだ
0840root▲ ★
垢版 |
2006/11/16(木) 00:26:20ID:???0
あと、>>839 に加えて、

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

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

うまく動いているなら、
明日早いので、今日はそろそろ寝る時間かも。
0843root▲ ★
垢版 |
2006/11/16(木) 00:31:58ID:???0
>>842
できたはず。

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

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

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

今日は私が、時間切れの予感。すみませんがこのへんで。
0848root▲ ★
垢版 |
2006/11/16(木) 00:48:17ID:???0
む、ブラウザを再起動したりいろいろやっていたら見えるようになった。なんでだろう。
いずれにせよ、今日の私の作業はここまでで。
0851 株価【1060】◆cZfSunOs.U
垢版 |
2006/11/16(木) 00:56:48ID:dGPoc1m+0
>>850 PATH_INFO 形式では別ページに遷移する形になるので
HTTP リクエストが発生しますね(更新されてなければ 304 が返ります).
location.hash 形式では既存のデータをそのまま利用しますが,
現状ではユーザの利便性を優先して PATH_INFO 形式がデフォルトです.
0856動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/16(木) 01:36:20ID:XcxyWfAH0
壷は知らんけど、専ブラ知らないでIE使ってる人はそんなこと気にしないような気がする
read.htmlは>>854 だとどこに集計されるのかしら?
0858動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/16(木) 07:29:07ID:UdZhrCoZ0
>>835
例えば、hiddencacheが空白だった場合は通常の動作をし、
hiddencacheにデータがあれば保存済みファイルと判断して
そちらから読むという感じです。
IEで保存した後は他のブラウザで開いても読める(はず)という利点もあります。

ただ、IEの仕様変更でいきなり使えなくなったりする怖さもあるので、
やっぱりread.cgiを使ってもらうのが確実ですね。
0860 株価【1000】◆cZfSunOs.U
垢版 |
2006/11/16(木) 09:16:20ID:dGPoc1m+0
特に苦情等が押し寄せてないことからすると,特段トラブル等はないということでいいのかな.
ただ,統計見ても read.cgi 呼び出し数にもあまり大きな変化がないような......
JavaScript 切ってたりブックマークから直接 read.cgi 呼び出したりしてるユーザが多いってことかな......

あと,デフォルトでは RewriteEngine on は入ってないんですね.
RewriteCond / RewriteRule の部分が効いてない悪寒(その部分はぐぐる等
外部リンクから read.cgi が呼ばれた場合 read.html に飛ばす設定).
0862root▲ ★
垢版 |
2006/11/16(木) 12:15:17ID:???0
>>860
RewriteEngine On にしてみた。@ life7
0864動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/16(木) 13:05:15ID:j2jIwDH6O
全板にやる前に、すぐ苦情を言って来る板にいれた方が。
0870 株価【1100】◆cZfSunOs.U
垢版 |
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 ファイルを置いてもらって,
それを読み込んで表示する形にするといいのかも.
0871root▲ ★
垢版 |
2006/11/16(木) 14:44:03ID:???0?PLT(20000)
>>870
datx/ もカウントするようにしました。
PR のところは、管理人も交えてというかんじですか。

# ちと、たぶん夜までオフライン。
0872 株価【1100】◆cZfSunOs.U
垢版 |
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)
ってのもお手数ですがおながいします>むむむさん
# 致命的な問題ではないので,ゆっくりでいいです.
0876root▲ ★
垢版 |
2006/11/16(木) 17:55:48ID:???0
>>873
ん、、、これはいまいちかも。
0877root▲ ★
垢版 |
2006/11/16(木) 17:59:29ID:???0
いったん life7 の bbs.cgi の該当箇所を戻しておきます。
read.html の機能は殺さないけど、
デフォルト(index.html subback.html 等)は元に戻るはず。
0878root▲ ★
垢版 |
2006/11/16(木) 18:01:05ID:???0
>>877
done.

ちと、しばらくオフライン。
0879ひろゆき@どうやら管理人 ★
垢版 |
2006/11/16(木) 18:23:13ID:???0?S★(101205)
sakuのbbs.cgiでread.htmlだとread.cgiに変換するようにするとか。
0882ひろゆき@どうやら管理人 ★
垢版 |
2006/11/16(木) 19:00:02ID:???0?S★(101205)
削除ツールのほうで対応してないとかの問題だったりするんすかね?
0884 株価【1100】◆cZfSunOs.U
垢版 |
2006/11/16(木) 20:50:50ID:dGPoc1m+0
ん?と,削除依頼で提示される URL が read.html になるのが問題なのであれば,
saku / saku2ch の書き込みでは本文中に /test/read.html/... が出てきたら
/test/read.cgi/... に変換するとかすればいいとかいうことではなくて?
0888 株価【1100】◆cZfSunOs.U
垢版 |
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 の内容を返す,と.
0889 株価【1100】◆cZfSunOs.U
垢版 |
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
0890root▲ ★
垢版 |
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 を追加すればいい、ということなのかしら。
0891root▲ ★
垢版 |
2006/11/16(木) 23:24:31ID:???0
いや、自分なりに読んでみると、

>>890 の4行のところを、
>>889 の6行と入れ替える、ということかしら。
0892root▲ ★
垢版 |
2006/11/16(木) 23:26:13ID:???0
で、今日はちと限界かも。
明日ということで。
0893 株価【1100】◆cZfSunOs.U
垢版 |
2006/11/16(木) 23:28:01ID:dGPoc1m+0
>>891 そうです.今まで external redirect してたのを internal redirect にするってことで.
これで,外面的には read.html という URL を使わずに済むようになるってことで.
0896 株価【1500】◆cZfSunOs.U
垢版 |
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 として置きますた.
0897ひろゆき@どうやら管理人 ★
垢版 |
2006/11/17(金) 01:35:30ID:???0?S★(101205)
internal redirectっていう手があるんすねぇ。
面白そうだし、やるだけやってみますか。
0900動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 02:45:14ID:ymJzGn6U0
某スレを見ようとブクマをクリックしたら
いきなりスレイプニル1.66が不正終了(でも何故かアプリ自体は落ちない)して
「読み込み中」の表示が出たまま固まったから何事かと思ったよ。
アプリ再起動したら普通に読み込めるようになったけど。
0901動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 06:05:02ID:YDdxhA3F0
うちのjavaコンソールで見れないんですが。
専ブラのギコナビ、マカフィ導入したらスレが見れなくなって
使えなくなったから、IEで見てるんだけど。
0902 株価【1500】◆cZfSunOs.U
垢版 |
2006/11/17(金) 09:26:48ID:ckg2ZVNy0
>>900 ん〜たまたま落ちたのか,それとも特定の条件で再現するのかが問題ですが,
また落ちるようなら知らせて下さい.

>>901 Java コンソールは Java アプレット(JavaScript とは別物)で発生するエラーメッセージ等を
表示するものじゃないかと...... それとも,IE でスレ表示自体ができないんですか?
0904動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 10:20:57ID:ofBotg3H0
>>902
901だけど、板一覧からクリックすると
読み込み中。。。の表示だけになる。
javaの設定がおかしいのかな?
0905動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 10:28:44ID:ofBotg3H0
アプレットにjava2v1.4.2_03を使用してるんだけどな…。
0907動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 10:54:33ID:O9wcaFb90
2ch内のリンクから飛んだり、アドレスバー直打ちだとURLがread.cgiのままなのに
googleやスレタイ検索など外部からのリンクから飛ぶとURLがread.htmlになってしまうのは仕様ですか?
0908 株価【1500】◆cZfSunOs.U
垢版 |
2006/11/17(金) 11:01:19ID:ckg2ZVNy0
あるいは,ウィルス対策ソフト導入してる場合に JavaScript 有効にしてても
read.js がブロックされて動かなくなっちゃう,って可能性はあるのかな......?


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

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

ってでる。
read.cgiをread.soに直したら書き込めるけど。
0915 株価【1500】◆cZfSunOs.U
垢版 |
2006/11/17(金) 11:29:06ID:ckg2ZVNy0
>>911 「ERROR:ブラウザを立ち上げなおしてみてください。」というエラーであれば,
PC 側の内蔵時計が実際の時刻よりかなり進んでる場合に発生する可能性があります.
時計を合わせてから再度やってみて下さい. http://www2.nict.go.jp/cgi-bin/JST.pl
0916911
垢版 |
2006/11/17(金) 11:30:05ID:GMHcZ2FT0
おいらはIE6だけど、何度やってもダメ。
ブラウザ閉じてやってもみたけど、どうしても書き込めない。
0917911
垢版 |
2006/11/17(金) 11:35:43ID:GMHcZ2FT0
>>916>>914までしか見てなかった。

>>915
書きこめた。ありがとう。
それにしても、たった6分程度でダメなのね。
0919動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 11:55:12ID:kfExmy/50
6分はずれすぎだろ・・・NTP的に考えて・・・
0922動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 13:44:20ID:drSJ8rji0
901ですが、株価さん、スプリクトはみんな有効になってました。
今のところread.cgiをread.soにすれば見れたので手動で見ます。
ウィルスソフトをノーdからマカフィにしたのが悪かったのかな?
0923ひろゆき@どうやら管理人 ★
垢版 |
2006/11/17(金) 13:53:29ID:???0?S★(101205)
スプリクトのせいかもしれませんね。えぇえぇ。
0924動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 13:55:23ID:drSJ8rji0
>>まろゆき
有効になってるスクリプトのせいなのかよorz
0925動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 13:58:34ID:drSJ8rji0
スプリクトでどうも変換できないと思ったけど、まろゆきに
突っ込まれて、924で比べてやっとこ間違いに気づいたw
連投スマソ、逝ってくるorz
0927911
垢版 |
2006/11/17(金) 14:01:51ID:lwMRSH700
トラブルをサポートしてもらえたので気を良くしてもう一つおかしなところ。

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

いつかやってた、書き込み時の広告をやめたのは苦情がきたからなのでしょうか?
運営は快適かもしれませんが、利用側にとっては反応性が悪くなって
快適性が損なわれてます。
やめてほしいし、少なくとも板の適用範囲の拡大はしてはほしくない。
0933動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 14:56:18ID:igi5gxyX0
ただなんだし、誰かに強制されてるわけでもないし。
無理に使うことはないよ。
少なくとも、俺は今までよりいろいろな機能がついて便利だと思ってる。
be.js以外は。
0936動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 15:06:22ID:RGj6QQx30
>>933
1回書くだけ書いて、もうレスはしないつもりでしたけど
デフォルトで使用状態になってるのに言ってる意味がわかりません。

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

板のトップでオフにできるなら、それにこしたことはありませんけれど
勘違いでしたらごめんなさい。
0939動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 15:22:21ID:igi5gxyX0
そういう決め付けをする人はどうでも良いです。

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

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

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

>>931 不思議ですねぇ......まぁ,mod_rewrite での振り分けに
Cookie 使うようになったので,index.html / subback.html に
手動で Cookie 設定できる機能を付けてみようかと思います.
>>932 のような意見もありますし.
0944stream ◆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で苦労しました)
0945動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 16:16:51ID:RGj6QQx30
>>941
素直にお礼を言わせて貰います
ありがとうございます

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



それと、もうひとつ思った可能性ですが
わたしの使ってる回線はADSLですが低速です、それによってひじょうにひっかかりを
感じてるのかもしれません、いろんな環境のひとがいると思いますのでご一報まで。
0947動け動けウゴウゴ2ちゃんねる
垢版 |
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
そういやよほどこの人のほうが自分の言ってることに当てはまってるな。
0950動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 18:09:50ID:s4U2jf+I0
>>947
なるほど。read.jsはキャッシュされるから最初に1回読み込めば
次のスレッドからは転送量の低減が見込めそうですね。
低速回線の人には福音かも。

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

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

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

話の歪みは各自で判断してくれ。
0952動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 18:27:47ID:RGj6QQx30
>>949
ありがとうございます。

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


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

(全体的に、失礼な文章に、もしなっていたらごめんなさい)
0953動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 18:45:55ID:igi5gxyX0
試験的にread.htmlのdat読み込み変換表示速度を計測できるようにしてみるのも面白いかも。
リソースの無駄遣いと言う気がせんでもないが。
0954ひろゆき@どうやら管理人 ★
垢版 |
2006/11/17(金) 18:50:56ID:???0?S★(101205)
>>953
なんとなく面白いかもかも。。
0957動け動けウゴウゴ2ちゃんねる
垢版 |
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のバージョン付近に表示してほしい
0958動け動けウゴウゴ2ちゃんねる
垢版 |
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秒などと、測定してます
0959動け動けウゴウゴ2ちゃんねる
垢版 |
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.
0960 ◆Reffiz2Zh.
垢版 |
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.
0964動け動けウゴウゴ2ちゃんねる
垢版 |
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.
0965動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/17(金) 21:58:55ID:igi5gxyX0
単純な計測スクリプトを書いてページを取得して描画するだけの速度計ってみた。
>>959の全部をIE6エンジンのHTAで読み込んだ場合500ミリ秒程度だった。

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

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

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

 お教え下さりまして、どうもありがとうございました!
 
0973ひろゆき@どうやら管理人 ★
垢版 |
2006/11/18(土) 00:40:24ID:???0?S★(101205)
39 kB (0.578 sec.)
0974ひろゆき@どうやら管理人 ★
垢版 |
2006/11/18(土) 00:40:35ID:???0?S★(101205)
>>972
そうかも。
0976動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/18(土) 01:08:18ID:1w3BmaPW0
ん? なんか変だwww
0977 株価【1050】 ▲▲ ◆cZfSunOs.U
垢版 |
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 のはず.
0978 株価【1050】 ▲▲ ◆cZfSunOs.U
垢版 |
2006/11/18(土) 01:38:55ID:n+K8iL/+0
>>966 保存だけが目的なら,モードを変えなくても
「非 JavaScript 版は URL 中の read.cgi を read.so に」
のリンクを右クリックして保存でもいいですね.
0980動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/18(土) 02:14:43ID:ihFbmVLI0
報告
板のトップでCGIモードにしていても、なにかのはずみでJavaScriptモードで
読みに行ってしまう場合があるようです。

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

たまにしか起こらないので使用上では問題はありませんが。
0984動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/18(土) 03:28:23ID:QwAELBtt0
901ですが、解決しました。
スレをクリックすると、読み込み中。。。という表示が
ページを表示しましたになっても変わらないのですが、
上の「全部」とか「最新50」とかクリックすることで
見れるようになりました。
でも読み込んでる途中でクリックすると、javascript:void;0
となり見れないままです。
0985動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/18(土) 03:37:22ID:QwAELBtt0
あれ?ページを表示しましたになっても、
javascript:void;0になって見れなくなった…orz
読めたのはわずかの間だった…orz
0989◆jh9.qqAS0E
垢版 |
2006/11/18(土) 09:57:41ID:ZBgoKl7xO
えーん!(つд;*)
0991◆jh9.qqAS0E
垢版 |
2006/11/18(土) 10:04:29ID:ZBgoKl7xO
>>990えーん!いじめる〜!゚(ノд`゚)゚・。
0992◆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―‐ '
           ̄} ̄          ハ
             /          {!    ト、
        /                /  ヽ
        /  ` ー -- ... ___    /_ ..- }
      /              ̄ ̄      |
0993^@kj7^@kj7 ◆VswWSpFPH2
垢版 |
2006/11/18(土) 10:36:08ID:W2+nISLF0
 
>>978

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

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


 お教え下さり、どうもありがとうございました。これからも宜しくお願い致します!(^^ゞ
 
0994 株価【1450】 ▲▲ ◆cZfSunOs.U
垢版 |
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 不思議ですねぇ......
0996動け動けウゴウゴ2ちゃんねる
垢版 |
2006/11/18(土) 13:08:14ID:bIzJhDNz0
2chは全体が巨大な実験場なのでは?
exはいきなりサーバーが落ちたりする危険な実験がよく行われますが・・・。
まあ、exでやるほうがいいのでしょうが、いつも実験場になるVipが
別の実験中ですし、root権限がないみたいですし・・・。
しょうがないのでは?
0997 株価【1450】 ▲▲ ◆cZfSunOs.U
垢版 |
2006/11/18(土) 13:23:10ID:n+K8iL/+0
>>995 実験って意味では,life7 での導入前に dso でやってました.
今やってるのは,実験と言えないこともないかも知れませんが,
本格導入に向けた前段階って感じかと思います.ちなみに life7 が
選ばれた理由は,read.cgi 呼び出し数が多いためその代替となる
read.html の効果を確認するには適しているということです
(専ブラユーザの多いところでやってもあまり意味がない).

# そろそろ次スレですね......
0999root▲ ★
垢版 |
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
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。

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