read.cgiをjavascriptで実現させるプロジェクトのスレッドです。
テスト版
http://sunos.saita.ma/read-js/test/read.cgi
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/
探検
read.cgi 2006―JavaScriptはCGIの夢を見るか
■ このスレッドは過去ログ倉庫に格納されています
NGNG
2006/07/25(火) 19:08:55ID:FwtvUCxU0
叶える物さ
2006/07/25(火) 19:09:14ID:5p+KTVNq0
javascript版もdat読み行ってるだけだからなんも問題ないんじゃないの?
2006/07/25(火) 19:10:45ID:xlF0graE0
へーおもすれー
2006/07/25(火) 19:15:01ID:Ntupk+XzP
携帯のフルブラウザとかはどーなる?
2006/07/25(火) 20:03:47ID:uxk+w/hTP
17stream ◆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/ のように使う,と......
http://qb5.2ch.net/test/read.cgi/operate/1153615149/775,827,843
775 名前:ひろゆき@どうやら管理人 ★[] 投稿日:2006/07/25(火) 04:34:06 ID:???0 ?BRZ
おいらはブラウザ派なのですな。
javascriptだけで、read.cgiが実現できるんじゃないかと、
前から思ってるんですが、誰か試してみないすかね。
827 名前: ◆MUMUMUhnYI [sage] 投稿日:2006/07/25(火) 13:42:07 ID:q+wYsp2i0 ?BRZ
(略)
>>775
まったく同じことを考えているです。
2ちゃんねるからは、dat と subject.txt を転送するだけにしたいと。
こう言っておくと、あの某 saita.ma 方面の超人的な人が、
何か考えてくれるかもしれないかもしれないなぁ、とか。
というか、>>811 おー。すばらしいです。
ぜひ、ぜひ。
read.cgi の負荷がきれいさっぱりなくなるかもしれないって考えただけで、
胸のときめきを感じます。
843 名前: 株価【950】 ▲ ◆cZfSunOs.U [sage] 投稿日:2006/07/25(火) 15:16:52 ID:MjMtyIbZ0
まぁ http://sunos.saita.ma/leaflet.html なんかは,>>775 みたいなことを考えてた時に作ったわけですがw
んで,http://sunos.saita.ma/read-js/test/read.html ってのをこしらえてみますた.
http://sunos.saita.ma/read-js/operate/dat/ のように dat がある時,例えば
http://sunos.saita.ma/read-js/test/read.html/operate/1153615149/ のように使う,と......
今のところの問題点
・文字化けや表示できないブラウザ等がある
表示できないブラウザは従来方式に切り替えれば対応可能
・表示速度がマシンによって遅くなる
重い部分をクライアントではなく鯖側に持って行けば解決可能?
こんなところかな?
・文字化けや表示できないブラウザ等がある
表示できないブラウザは従来方式に切り替えれば対応可能
・表示速度がマシンによって遅くなる
重い部分をクライアントではなく鯖側に持って行けば解決可能?
こんなところかな?
2006/07/25(火) 21:46:49ID:LmtJUG9o0
21御法川将貴
2006/07/25(火) 23:17:23ID:QXaGIOsz0 斎藤優貴は価値も薄れた人間だな
2006/07/25(火) 23:18:54ID:PA4hc9Xd0
NGNG
AASって素人目には負荷すごそうなんだけど
どうにかならんのか?
どうにかならんのか?
24root▲ ★
NGNG さて、.htaccess 的にはどうすればいいのかしら。 < dso に入れる場合
25stream ◆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だと文字化けする、が俺の見解。
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だと文字化けする、が俺の見解。
26stream ◆PNstream2s
2006/07/26(水) 00:29:37ID:2SYEq+Uy0 今の状態でdatファイルは text/plain になってるから
ForceType text/plain
は要らないですかね
text/○○ じゃないと AddDefaultCharset Shift_JIS が反映されないんで
ForceType text/plain
は要らないですかね
text/○○ じゃないと AddDefaultCharset Shift_JIS が反映されないんで
27root▲ ★
NGNG >>25
> どうあがいてもIE6だと文字化けする、が俺の見解。
質問・雑談スレ231@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1153615149/966
これでも?
> どうあがいてもIE6だと文字化けする、が俺の見解。
質問・雑談スレ231@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1153615149/966
これでも?
まぁ,JavaScript の文字列処理は Unicode 前提ってことなんでしょうねぇ......
29stream ◆PNstream2s
2006/07/26(水) 00:35:15ID:2SYEq+Uy0 >>27
こんなのも試してみたんですが
http://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html
どうしても、Shift_JISのdatファイルを無理やりまずUTF-8として読み込まなきゃいけないんですが
そのときにUFT-8的におかしなデータを?に変換してしまうみたいで。
こんなのも試してみたんですが
http://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html
どうしても、Shift_JISのdatファイルを無理やりまずUTF-8として読み込まなきゃいけないんですが
そのときにUFT-8的におかしなデータを?に変換してしまうみたいで。
31stream ◆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
これをやれば文字化けしないんでしょうけど(試してません)。
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
32root▲ ★
NGNG >>29
うーむ。
センス悪い方法としては mod_filter + mod_proxy あたりを使うんですかね。
/板名/dat/*.dat は生だが、
/板名/dat_uta8/*.dat を読むと、上記を mod_filter が UTF-8 にコンバートしてから、
クライアントに渡すとか。
うーむ。
センス悪い方法としては mod_filter + mod_proxy あたりを使うんですかね。
/板名/dat/*.dat は生だが、
/板名/dat_uta8/*.dat を読むと、上記を mod_filter が UTF-8 にコンバートしてから、
クライアントに渡すとか。
33root▲ ★
NGNG センス悪いというか、そんなに悪くないのかな。
ちょっとコスト上がりますが、少なくとも read.cgi で表示するための
整形処理するよりは、負荷低いはずだし。
で、mod_cache とかが*うまく*動けば、一個コード変換したものは
キャッシュされるようにできるかもしれないし。
ちょっとコスト上がりますが、少なくとも read.cgi で表示するための
整形処理するよりは、負荷低いはずだし。
で、mod_cache とかが*うまく*動けば、一個コード変換したものは
キャッシュされるようにできるかもしれないし。
34root▲ ★
NGNG で、JavaScript 化で得られるメリットを考えたら、
コード変換のコストは、reasonable だと思ですね。
結局、単なる決められた数値演算に過ぎないし。
コード変換のコストは、reasonable だと思ですね。
結局、単なる決められた数値演算に過ぎないし。
2006/07/26(水) 00:53:24ID:wOSQuFsG0
NGNG
>>35
再読み込みもOK?エラーでない?
再読み込みもOK?エラーでない?
37ひろゆき@どうやら管理人 ★
NGNG はや!
38root▲ ★
NGNG >>37
まだ、スタート地点に立ったばかりです。
ほんとの苦労は、これから、これから。
で、これ、どう思いますか?
【にがうり】 雪だるま作戦のスレを待ち続けるスレ Part17
http://aa5.2ch.net/test/read.cgi/nanmin/1153671484/289-
まだ、スタート地点に立ったばかりです。
ほんとの苦労は、これから、これから。
で、これ、どう思いますか?
【にがうり】 雪だるま作戦のスレを待ち続けるスレ Part17
http://aa5.2ch.net/test/read.cgi/nanmin/1153671484/289-
2006/07/26(水) 02:05:10ID:ax/3R4o80
responseTextじゃなくて、responseBodyなら、
クライアント側で変換できるけど。遅いよ
クライアント側で変換できるけど。遅いよ
2006/07/26(水) 02:05:27ID:t4IhxYwc0
実用的ではない
まず重い、ありえない
そもそもJavaなんか切ってる人が大半
───終了───
まず重い、ありえない
そもそもJavaなんか切ってる人が大半
───終了───
41ひろゆき@どうやら管理人 ★
NGNG >>38
1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
何割なんでしょう。
少数の高額利用者の食い合いをしてる業界であればわかるのですが、
無料で利用できる掲示板にそのまま適用できるとは思えなかったりします。
1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
何割なんでしょう。
少数の高額利用者の食い合いをしてる業界であればわかるのですが、
無料で利用できる掲示板にそのまま適用できるとは思えなかったりします。
42root▲ ★
NGNG >>41
> 1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
> 何割なんでしょう。
AMC (ANAマイレージクラブ)の会員は、およそ1000万人と言われています。
乱暴に言えばまぁ大体、飛行機に乗る日本人の数と、当たらずとも遠からずかと。
で、PLT 以上なのは、つまりマイレージプログラムに執着しているとみなせる人は、
そのうちのおよそ 1% 程度といわれています。
つまり、だいたい私と同じか、あるいはそれ以上のレベルの廃人は、
全国に10万人ぐらいは、いることになるです。
これを多いと考えるか少ないと考えるかで、
このようにエンブレムを載せる意味が、
あるのかないのかにつながっていくんではないかと。
で、私は「これは無料だからこそより適用できるのだ、掲示板には愛が大事なのだ」
と、全く根拠なく思っていたりします。
> 1年間に飛行機に乗る人のうち、マイレージプログラムに執着するのは
> 何割なんでしょう。
AMC (ANAマイレージクラブ)の会員は、およそ1000万人と言われています。
乱暴に言えばまぁ大体、飛行機に乗る日本人の数と、当たらずとも遠からずかと。
で、PLT 以上なのは、つまりマイレージプログラムに執着しているとみなせる人は、
そのうちのおよそ 1% 程度といわれています。
つまり、だいたい私と同じか、あるいはそれ以上のレベルの廃人は、
全国に10万人ぐらいは、いることになるです。
これを多いと考えるか少ないと考えるかで、
このようにエンブレムを載せる意味が、
あるのかないのかにつながっていくんではないかと。
で、私は「これは無料だからこそより適用できるのだ、掲示板には愛が大事なのだ」
と、全く根拠なく思っていたりします。
43root▲ ★
NGNG >>42
> つまり、だいたい私と同じか、あるいはそれ以上のレベルの廃人は、
> 全国に10万人ぐらいは、いることになるです。
で、これは自分で飛行機を利用した時の、PLT 以上の数の感覚、
例えばラウンジの込みようとか、ビジネスクラスに乗ったときの配膳メニューに
マルP と書いてあるか(見えないようにしているけどたまに見える)とかとも、
だいたい一致している気がするです。
個人的には「廃人は思ったより多いなぁ」という感覚ですね。
というかマイレージプログラムがあるから、廃人が増えるのかもしれないです。
> つまり、だいたい私と同じか、あるいはそれ以上のレベルの廃人は、
> 全国に10万人ぐらいは、いることになるです。
で、これは自分で飛行機を利用した時の、PLT 以上の数の感覚、
例えばラウンジの込みようとか、ビジネスクラスに乗ったときの配膳メニューに
マルP と書いてあるか(見えないようにしているけどたまに見える)とかとも、
だいたい一致している気がするです。
個人的には「廃人は思ったより多いなぁ」という感覚ですね。
というかマイレージプログラムがあるから、廃人が増えるのかもしれないです。
2006/07/26(水) 02:14:43ID:9rtlkJef0
ひろゆきってどのブラウザ使ってるの?
2006/07/26(水) 02:15:06ID:HbnVPe7vO
それやるならついでにプロフィールの背景色連動させて変えようぜ。紺色にしたい
あとそろそろ ? を消して BRZ とかにリンクはらね。
そろそろスレ違いな雰囲気だが
あとそろそろ ? を消して BRZ とかにリンクはらね。
そろそろスレ違いな雰囲気だが
46root▲ ★
NGNG >>45
> あとそろそろ ? を消して BRZ とかにリンクはらね。
> そろそろスレ違いな雰囲気だが
これは、スレ違いじゃないかもですね。
新しい read.cgi では、? をはずしてみるとか。
> あとそろそろ ? を消して BRZ とかにリンクはらね。
> そろそろスレ違いな雰囲気だが
これは、スレ違いじゃないかもですね。
新しい read.cgi では、? をはずしてみるとか。
2006/07/26(水) 02:18:25ID:8Qn/kEiJ0
それはいいが、まずdatの形式を#形式にしてもらえないだろうか。
スレ違い御免。
スレ違い御免。
2006/07/26(水) 02:21:51ID:HbnVPe7vO
あとポイント自分に送れるままにしとくなら
ポイントに必要なch森稼ぐ手段としての証券取引所も活性化が見込める
ポイントに必要なch森稼ぐ手段としての証券取引所も活性化が見込める
49root▲ ★
NGNG で、明日あたりに質雑を読み返して、
出てきた issue を、こっちにまとめておきますか。
このへんから。
今日(もう昨日だけど)は歴史が動いた日で。
質問・雑談スレ231@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1153615149/775-
すべては、一言の神の啓示から始まったと。
そんなわけで。
出てきた issue を、こっちにまとめておきますか。
このへんから。
今日(もう昨日だけど)は歴史が動いた日で。
質問・雑談スレ231@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1153615149/775-
すべては、一言の神の啓示から始まったと。
そんなわけで。
2006/07/26(水) 10:57:12ID:YgctB/iu0
AjaxでdatをDLするんでそ?
最新のN件とかはどうするの?毎回DAT丸ごとDL?
最新のN件とかはどうするの?毎回DAT丸ごとDL?
2006/07/26(水) 10:58:48ID:uOoJt+H8P
京ぽんOperaの場合、オフラインでなら動くのあるんだけどね〜。
★h" style/2ch DAT ビューア
ttp://www13.plala.or.jp/airh/filearea/tool/2chdat/index.html
京2だと保存したdatの拡張子が.htmになっちゃうんで、PC使って拡張子.datに直さないとダメ。
★h" style/2ch DAT ビューア
ttp://www13.plala.or.jp/airh/filearea/tool/2chdat/index.html
京2だと保存したdatの拡張子が.htmになっちゃうんで、PC使って拡張子.datに直さないとダメ。
XMLHttpRequest だといろいろ苦しみそうな気がするので,
方針転換して隠しフレームに読み込む形にしてみますた.
たぶん,これで文字化け問題も解決するかと......
それから,先日作った be.js も取り込んで,dat への記録は従来形式
(# の数でランクを示す)のままでも表示段階でマイレージランクに
変換するようにしますた.頭の ? も消えます(ただ,直接 dat に
マイレージランクを記録してる分には対応してません).
で,be.js は index.js と同様に www2 あたりに置いて頂ければ,と......
方針転換して隠しフレームに読み込む形にしてみますた.
たぶん,これで文字化け問題も解決するかと......
それから,先日作った be.js も取り込んで,dat への記録は従来形式
(# の数でランクを示す)のままでも表示段階でマイレージランクに
変換するようにしますた.頭の ? も消えます(ただ,直接 dat に
マイレージランクを記録してる分には対応してません).
で,be.js は index.js と同様に www2 あたりに置いて頂ければ,と......
NGNG
まだばーじょんは書いて無いね
NGNG
あ、opera8.54でも見られるようになった。
だけど、ここ壊れていますが最後に出るよ。
だけど、ここ壊れていますが最後に出るよ。
2006/07/26(水) 13:23:52ID:9rtlkJef0
IEはダイレクトXにfirefoxはextentionからdll呼び出し
とかはダメ?operaは知らないけど・・・
とかはダメ?operaは知らないけど・・・
2006/07/26(水) 13:28:36ID:3WFXWq3i0
全てに対応しようとしないで、対応していないブラウザはいままで通りread.cgiに飛ばすってのがいいんじゃいかと。
半分のアクセスをこれで対応するだけで、負荷的にはかなり下がるんだし。
半分のアクセスをこれで対応するだけで、負荷的にはかなり下がるんだし。
NGNG
Windows 2000 Service Pack 4
IE Version: 6.0.2800.1106
IEからみたら読み込み中のまま。フリーズはしなかった。
セキュリティ設定は中。キャッシュを消して見たけどだめ。
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/
IE Version: 6.0.2800.1106
IEからみたら読み込み中のまま。フリーズはしなかった。
セキュリティ設定は中。キャッシュを消して見たけどだめ。
http://sunos.saita.ma/read-js/test/read.cgi/operate/1153615149/
2006/07/26(水) 14:40:09ID:rpYommal0
IE以外のブラウザは無視して可ではないのですか。
どういうユーザ層がどのブラウザを使ってるか考えれば。
どういうユーザ層がどのブラウザを使ってるか考えれば。
2006/07/26(水) 14:45:25ID:HbnVPe7vO
そうだね、プロテインだね
2006/07/26(水) 15:11:36ID:dOdHM1Xl0
read.cgi動かすのとiconvとかnkfとかを動かすコストってどのくらい違うのかな。
ほら、XMLHttpRequestってリクエストヘッダも自由自在に送れたりするじゃん?
ほら、XMLHttpRequestってリクエストヘッダも自由自在に送れたりするじゃん?
隠しフレーム方式の場合,今度は文字コードではなく MIME type がバタつくようで...<IE
text/plain として扱ってくれるといいんですが,text/html と勝手に解釈してくれると
dat 中に含まれるタグのところでテキストがバラされたり \n もすっ飛んだり,
ってのが >>57 のようで......あちら立てればこちら立たず......
text/plain として扱ってくれるといいんですが,text/html と勝手に解釈してくれると
dat 中に含まれるタグのところでテキストがバラされたり \n もすっ飛んだり,
ってのが >>57 のようで......あちら立てればこちら立たず......
2006/07/26(水) 15:48:07ID:aUhdqtnc0
というか、Ajax使うならまず最初にブラウザ判定をきちんとやって、
非対応ブラウザなら別の処理に回すってのが常道かと思うが
非対応ブラウザなら別の処理に回すってのが常道かと思うが
>>62 まぁ現状では,JavaScript 版と CGI 版をそれぞれどんな URL で提供するかとか
そのあたりも決まってないし,そもそも IE での奇妙な挙動の問題を解決しないことには
実際に日の目を見ることもないでしょうから,その解決がまず先決でしょうし......
で,文字コード変換フィルタモジュールってことではこんなのがあったりします......
http://httpd.apache.org/docs/2.2/mod/mod_charset_lite.html
そのあたりも決まってないし,そもそも IE での奇妙な挙動の問題を解決しないことには
実際に日の目を見ることもないでしょうから,その解決がまず先決でしょうし......
で,文字コード変換フィルタモジュールってことではこんなのがあったりします......
http://httpd.apache.org/docs/2.2/mod/mod_charset_lite.html
64stream ◆PNstream2s
2006/07/26(水) 16:38:19ID:XjCWLJKJ0 IEだと「別の処理」すらできないのにブラウザ判定も何もないよ
2006/07/26(水) 17:00:48ID:dOdHM1Xl0
Javascript用のdatディレクトリを用意してmod_charset_liteの設定をする.htaccessを用意して
datは専用ブラウザ用の方へのsymlinkにすると?
datは専用ブラウザ用の方へのsymlinkにすると?
66root▲ ★
2006/07/26(水) 18:13:56ID:???0 やりたいことと、とりうる手段の整理からしようかと。
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,"");
変化が無ければごめんなさいという事で。
失礼しました
datをtext/plainで表示するように.htaccessで設定したものを
アップした後
スクリプト内で
datファイルを読み込んだ直後(70行目あたり?)に
下記のようなタグ書き換えを行う正規表現を置いてみてはどうでしょうか。
var loadDat = loadDat.replace(/</g,"<");
var loadDat = loadDat.replace(/>/g,">");
var loadDat = loadDat.replace(/<pre>/gi,"");
var loadDat = loadDat.replace(/<\/pre>/gi,"");
var loadDat = loadDat.replace(/&/gi,"&");
var loadDat = loadDat.replace(/<xml>/gi,"");
var loadDat = loadDat.replace(/<\/xml>/gi,"");
変化が無ければごめんなさいという事で。
失礼しました
NGNG
タグが書き換えられている・・
こちらです↓
var loadDat = loadDat.replace(/&lt;/g,"<");
var loadDat = loadDat.replace(/&gt;/g,">");
var loadDat = loadDat.replace(/<pre>/gi,"");
var loadDat = loadDat.replace(/<\/pre>/gi,"");
var loadDat = loadDat.replace(/&amp;/gi,"&");
var loadDat = loadDat.replace(/<xml>/gi,"");
var loadDat = loadDat.replace(/<\/xml>/gi,"");
「&」を半角にして頂ければ。
こちらです↓
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,"");
「&」を半角にして頂ければ。
70root▲ ★
2006/07/26(水) 18:53:00ID:???0 >>67
まだ、個別の項目にいく時期ではないと思うです。
JavaScript でやるのかどうかも、まだ決まっていないと思っています。
というわけで、整理を。
○今回やりたいこと
2ちゃんねるのサーバの負荷を軽くしたい。
○今回の目標
今回は具体的な事項として、
・掲示板サーバで read.cgi を動かすのをできるだけ少なくする
ことを目標にする。
最終的には全廃をめざすが、read.cgi の起動数を少なくできるなら、それでもよい。
まだ、個別の項目にいく時期ではないと思うです。
JavaScript でやるのかどうかも、まだ決まっていないと思っています。
というわけで、整理を。
○今回やりたいこと
2ちゃんねるのサーバの負荷を軽くしたい。
○今回の目標
今回は具体的な事項として、
・掲示板サーバで read.cgi を動かすのをできるだけ少なくする
ことを目標にする。
最終的には全廃をめざすが、read.cgi の起動数を少なくできるなら、それでもよい。
2006/07/26(水) 19:04:57ID:6gP6+0Mt0
>>70
やりたいこと&目標は
http://qb5.2ch.net/test/read.cgi/operate/1153615149/775
>おいらはブラウザ派なのですな。
>
>javascriptだけで、read.cgiが実現できるんじゃないかと、
>前から思ってるんですが、誰か試してみないすかね。
じゃなかったっけ?
やりたいこと&目標は
http://qb5.2ch.net/test/read.cgi/operate/1153615149/775
>おいらはブラウザ派なのですな。
>
>javascriptだけで、read.cgiが実現できるんじゃないかと、
>前から思ってるんですが、誰か試してみないすかね。
じゃなかったっけ?
2006/07/26(水) 19:07:02ID:zo6Ee0v80
2006/07/26(水) 19:08:22ID:hZZWHB7M0
つまりread.cgiの負担を減らす事かと
2006/07/26(水) 19:09:03ID:+1rXbJLeP
77root▲ ★
NGNG なので、私は >>70 の目的が実現できるのであれば、
別にその手段が JavaScript である必要はかならずしもなくて、
別のものでもいいと思っているです。
JavaScript 以外の候補としては、
・flash
・Java
なども、あると思っています。
で、私としては管理人が「JavaScript 以外のものは使うな。これは私の命令です」
と言わない限り、可能性はより多いほうがいいなと考えています。
つまり、上記に JavaScript も含めたそれぞれの
・メリット
・デメリット
・実現可能性
などなどの要素を総合的に評価したうえで、
目標実現のためにどんな道具を使うのがいいか、決めたいかなと。
別にその手段が JavaScript である必要はかならずしもなくて、
別のものでもいいと思っているです。
JavaScript 以外の候補としては、
・flash
・Java
なども、あると思っています。
で、私としては管理人が「JavaScript 以外のものは使うな。これは私の命令です」
と言わない限り、可能性はより多いほうがいいなと考えています。
つまり、上記に JavaScript も含めたそれぞれの
・メリット
・デメリット
・実現可能性
などなどの要素を総合的に評価したうえで、
目標実現のためにどんな道具を使うのがいいか、決めたいかなと。
2006/07/26(水) 19:34:30ID:ax/3R4o80
だったらActiveXでWebブラウザ上に2chブラウザ再現しちゃえば良いじゃん。IE限定だけど
79root▲ ★
NGNG2006/07/26(水) 19:44:51ID:9rtlkJef0
IETabみたいに、レンダリングエンジンをうまく
ごにょごにょすればfirebirdでも大丈夫だぜ
ごにょごにょすればfirebirdでも大丈夫だぜ
81stream ◆PNstream2s
2006/07/26(水) 19:57:39ID:kXk1e64C02006/07/26(水) 20:10:42ID:kV/VHu8d0
2001年の閉鎖危機の時にもread.cgiをjavascriptで代用するという案があったけど、
当時は互換性うんたらかんたらで却下されました。
当時は互換性うんたらかんたらで却下されました。
83stream ◆PNstream2s
2006/07/26(水) 20:24:33ID:kXk1e64C0 んで、mod_charset_lightでUTF-8に変換してみたけど、うまくいきますね。
ただ、Shift_JIS的におかしなデータがdatファイルに存在すると500 Internalサーバーエラーになるっぽいですね。
ただ、Shift_JIS的におかしなデータがdatファイルに存在すると500 Internalサーバーエラーになるっぽいですね。
84root▲ ★
NGNG >>83
なるほど。
ただこの場合、コード変換の分だけ、サーバは仕事をすることになりますね。
read.cgi 動かすのとどっちが負荷がトータルで低くなるか、が、
重要なポイントの一つなのかな。
あとは、ユーザに影響が出ないように実装できるのか、とか。
いずれにせよ、
> ただ、Shift_JIS的におかしなデータがdatファイルに存在すると
> 500 Internalサーバーエラーになるっぽいですね。
は、ちょっといまいちなのかなと。
なるほど。
ただこの場合、コード変換の分だけ、サーバは仕事をすることになりますね。
read.cgi 動かすのとどっちが負荷がトータルで低くなるか、が、
重要なポイントの一つなのかな。
あとは、ユーザに影響が出ないように実装できるのか、とか。
いずれにせよ、
> ただ、Shift_JIS的におかしなデータがdatファイルに存在すると
> 500 Internalサーバーエラーになるっぽいですね。
は、ちょっといまいちなのかなと。
2006/07/26(水) 21:08:04ID:kV/VHu8d0
IEのデータバインディングを使って、datをcsvとして読み込むという方法もあるのかな。
http://www.microsoft.com/japan/msdn/columns/dude/dude1103.aspx
ここのサンプルなんかはSJISのデータファイルを読み込んでる。
http://himuka.miyazaki-c.ed.jp/db/kyouzai/manual/orienteering2/ogura/sample.htm
http://www.microsoft.com/japan/msdn/columns/dude/dude1103.aspx
ここのサンプルなんかはSJISのデータファイルを読み込んでる。
http://himuka.miyazaki-c.ed.jp/db/kyouzai/manual/orienteering2/ogura/sample.htm
Java アプレットは重い(特に VM 起動時)ですからね......
Flash は Java よりは軽いでしょうけど,(文字列の扱いにもよるのかも
知れませんが)文字化けすることもあって......まぁこちらの環境は少数派でしょうけど.
http://sunos.saita.ma/read-js/test/flash.png
JavaScript はブラウザによって挙動不審になったりとかする部分もあったりするのが
苦労するところですが,それを乗り越えれば一番お手軽ではあるんですよね.
あと,フィルタモジュールの負荷ってことなら,文字コード変換より圧縮,
つまり mod_deflate の方がよほど重いかと.
Flash は Java よりは軽いでしょうけど,(文字列の扱いにもよるのかも
知れませんが)文字化けすることもあって......まぁこちらの環境は少数派でしょうけど.
http://sunos.saita.ma/read-js/test/flash.png
JavaScript はブラウザによって挙動不審になったりとかする部分もあったりするのが
苦労するところですが,それを乗り越えれば一番お手軽ではあるんですよね.
あと,フィルタモジュールの負荷ってことなら,文字コード変換より圧縮,
つまり mod_deflate の方がよほど重いかと.
2006/07/26(水) 21:22:52ID:+1rXbJLeP
ここで空気を読まずにJSP
2006/07/26(水) 21:29:57ID:gpcl/1Jf0
JSPって↓のようなやつだっけ?
<%
for(int i = 0; i < bbs.getLastNum(); i++){
%>
メッセージ:<%= bbs.getMessage() %><br>
<%
}
%>
<%
for(int i = 0; i < bbs.getLastNum(); i++){
%>
メッセージ:<%= bbs.getMessage() %><br>
<%
}
%>
2006/07/26(水) 21:30:19ID:wK/+H917P
Web製作板でJavaScript版
プログラム板でJava Applet版
Flash板でFlash版
を作ればいいんでね?盛り上がりそうw
プログラム板でJava Applet版
Flash板でFlash版
を作ればいいんでね?盛り上がりそうw
2006/07/26(水) 21:36:49ID:8Qn/kEiJ0
SunがMicrosoftのVM潰さなければねぇ。
独自拡張もあったにしろMicrosoftの方が早かったのに。
独自拡張もあったにしろMicrosoftの方が早かったのに。
NGNG
JSPはサーバサイドだからあんま意味なくね?
それとも実はものごっつ軽いとか?
それとも実はものごっつ軽いとか?
2006/07/26(水) 23:03:24ID:RjRvuw4Y0
いや、別にJSPがものごっつ軽いとかは無い。
普通にサーバサイドだし。
普通にサーバサイドだし。
不正なバイトシーケンスを無視して 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
--- 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
95ゴッド便所 ◆AKQJ10itoI
NGNG 文字コード変換でサーバーにかかる負担はどれくらいなんだ?
2006/07/26(水) 23:33:57ID:9rtlkJef0
文字コード変換もjava scriptで。
97root▲ ★
NGNG2006/07/27(木) 00:17:17ID:tvu0ZHE80
jspは意味無いでしょ・・・
折角、サーバ側で読み出しの負荷を下げようというのに・・・
折角、サーバ側で読み出しの負荷を下げようというのに・・・
99stream ◆PNstream2s
2006/07/27(木) 00:21:06ID:5ofr++i80 >>97
板のディレクトリのところに dat-utf8 とかでdatディレクトリに対しシンボリックリンク作って
そこへのアクセスはmod_charset_liteを使うようにするとか
これだと各サーバーの各板でシンボリックリンクを張る作業しなきゃいけないから大変?
板のディレクトリのところに dat-utf8 とかでdatディレクトリに対しシンボリックリンク作って
そこへのアクセスはmod_charset_liteを使うようにするとか
これだと各サーバーの各板でシンボリックリンクを張る作業しなきゃいけないから大変?
2006/07/27(木) 00:35:54ID:YpMYl/gy0
<ぼそ>スイスアーミーナイフ</ぼそ>
2006/07/27(木) 00:44:39ID:86/KPhLr0
rangeで**バイト以降のデータをリクエストしたら、変換後のバイト数で来るんだよね。
2006/07/27(木) 18:42:21ID:viWF9XEA0
ブラウザによって違う動作といえば、Gecko系のXMLHttpRequestは
同一ホストか同一ドメインに限られていたような。
これは各サーバに入れておけば済む問題だが。
同一ホストか同一ドメインに限られていたような。
これは各サーバに入れておけば済む問題だが。
JavaScript は、結構方言が多いんですかね。
大きく分けると、
・IE 系
・Gecko 系
・Opera 系
・Safari 系
ぐらい?
大きく分けると、
・IE 系
・Gecko 系
・Opera 系
・Safari 系
ぐらい?
2006/07/27(木) 20:26:48ID:mkOYbx750
そこにバージョンの差とかいろいろ
>104
分類すると
・IE−Sun系 MS系
・Gecko−1.5系 2.0系 3.0系
OperaとSufariは使ったことがないので補足ヨロ
分類すると
・IE−Sun系 MS系
・Gecko−1.5系 2.0系 3.0系
OperaとSufariは使ったことがないので補足ヨロ
>106
Gecko間違えて炎狐でやっちゃった
・Gecko−1.8.0系(炎狐1.0.x) 1.8.1系(炎狐2.0) 1.9系(炎狐3.0)
Gecko間違えて炎狐でやっちゃった
・Gecko−1.8.0系(炎狐1.0.x) 1.8.1系(炎狐2.0) 1.9系(炎狐3.0)
2006/07/27(木) 20:37:27ID:E06nA/kZ0
Safariは1.X系と2.X系…か?
2006/07/27(木) 20:45:01ID:/QbR/fVa0
SafariはKHTML系の一部だろ。
他にKonquerorとかある。
他にKonquerorとかある。
Operaって
ttp://www.opera.com/docs/specs/js/
こんなでいいの?
ttp://www.opera.com/docs/specs/js/
こんなでいいの?
>>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>
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>
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- タレント中居正広 芸能界引退を発表 ファンへ「こんなお別れで、本当に、本当に、ごめんなさい。さようなら…。」★21 [Ailuropoda melanoleuca★]
- 中居正広引退 被害女性代理人が女性の現在について回答 「決して消えることのない痛みを抱えつつ、人生を再スタートさせようと懸命に」 [冬月記者★]
- 【サッカー】森保監督、日本代表の新戦力構想 今月末から3週間の渡欧、目的の1人は〝推しメン〟マインツの佐野海舟選手 [冬月記者★]
- 【テレビ】『ダウンタウンDX』 放送内容変更 昨年5月の再放送届ける 放送3時間前のアナウンスに動揺広がる★2 [jinjin★]
- フジテレビ・港社長 社員説明会で〝閉鎖的会見〟に「終わって失敗したと思った」 [ひかり★]
- 【新卒初任給】引き上げラッシュで給与逆転 中高年社員から漏れる「仕事教えるからおごれ」の複雑心境 [七波羅探題★]
- 【悲報】武井壮、中居正広の件で意味不明にキレ始める [747976479]
- 【動画】古市憲寿のフジテレビ出禁覚悟のコメントがすごすぎて13万いいね👍…今この日本でこれ言えるやつ何人いるんだよ… [904880432]
- フジテレビ副会長、うっかり「女子アナが『一晩』過ご…夕食を過ごせるように」🤔 [481941988]
- ウミガメのスープの問題考えたからやってみて欲しい
- 【速報】NATO、すごいことを言い出す!米国にウクライナ向け兵器供与の継続を要請、その費用は"欧州が全負担" [308389511]
- 高市早苗「パリ協定やWHOなど国際的枠組みからの脱退、共感出来る。私もジャパンファーストでやっていきたい」 [237216734]