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

read.cgi改良スレッド

318 :音楽侍 ◆NtVkSITE :01/08/29 20:48 ID:EqArAK56
作業概要

転送の帯域を抑えるため、各htmlコンテンツをgzipで提供するに当たり、
gzip対応しているブラウザにはgzip版を、非対応ブラウザにはテキスト版を送信するcgiを挟みます。
このことにより、ブラウザのトラブルを回避し、圧縮された各コンテンツを配給できます。

実装は以下の通り(index2.htmlの場合)

index2.cgi導入 → cgi内部でgzip対応を判断 → 適切な内容を表示

319 :302 :01/08/29 20:49 ID:ps40cZfg
あほ++、さらに320とか入れてるし。

>>317
>IEはヘッダにはAccept-Encoding: gzip, deflateと含めているにも
>関わらず、実際にdeflateでエンコードしたデータを喰わせても
>解釈できないです。
これって確認されてる?

320 :名無し娘。 ◆vP.bOZFQ :01/08/29 20:52 ID:hNInjuxs
<index2.cgi.2>
ftp://210.170.170.118/incoming/index/bbsmenu.html
ftp://210.170.170.118/incoming/index/bbstable.html
ftp://210.170.170.118/incoming/index/subback.html
ftp://210.170.170.118/incoming/index/xxxxx.cgi
ftp://210.170.170.118/incoming/index/xxxxx.html

bbsmenu.html bbstable.html は www.2ch.net/ におけばそのまま使えます。
index2.html subback.html は、"xxx"を鯖名 "yyy"を板名、
bbspink2のときはさらに"2ch.com"を"bbspink.net"に置換して、
/板名/に置きます。

xxxxx.cgi は、"xxxxx"を現在あるファイル名(拡張子抜き)に置き換えます。
index2.html の場合は、index2.cgi のように。
ソース中の "xxxxx" も同様に置き換えます。板名や鯖名は気にしなくて
よいです。

これらで参照される「実ファイル」は、xxxxx_r.html xxxxx_r.html.gz です。
index2.html -> index2_r.html / index2.htm -> index2_r.html.gz
subback.html -> subback_r.html のようにリネームしてください。


実装について、>>276 は index2.html が読めなくなるという事態を
極力回避するため、実装しませんでした。

●概要の文面
>>274

ちょっとチェックしてみてください。

321 :音楽侍 ◆NtVkSITE :01/08/29 20:54 ID:EqArAK56
作業手順
<index2>
1)bbs.cgiをとめる
2)各ファイル名を変更する
mv index2.htm index3.htm; mv index2.html index3.html;
3)bbs.cgiが出力するファイル名 index2.htm index2.html を index3.htm index3.html にする
4)復帰スクリプトが出力するファイル名も、同様に変える
5)index2.htm index2.htmlは、以下のようにreflashでジャンプするよう記述する
<HTML><HEAD>
<META HTTP-EQUIV="refresh" content="1;URL=http://xx.2ch.net/xxxx/index2.cgi">
</HEAD><BODY>
<A HREF="http://xx.2ch.net/xxxx/index2.cgi">クリック</A>
</BODY></HTML>

322 :音楽侍 ◆NtVkSITE :01/08/29 20:55 ID:EqArAK56
訂正。というか、細かすぎるかもしれませんが

作業手順
<index2>
1)bbs.cgiをとめる
2)各ファイル名を変更する
mv index2.htm index3.htm; mv index2.html index3.html;
3)bbs.cgiが出力するファイル名 index2.htm index2.html を index3.htm index3.html にする
4)復帰スクリプトが出力するファイル名も、同様に変える
5)index2.htm index2.htmlは、以下のようにreflashでジャンプするよう記述する
<HTML><HEAD>
<META HTTP-EQUIV="refresh" content="1;URL=http://xx.2ch.net/xxxx/index2.cgi">
</HEAD><BODY>
<A HREF="http://xx.2ch.net/xxxx/index2.cgi">クリック</A>
</BODY></HTML>
6)bbs.cgi を稼働状態に戻す

323 :音楽侍 ◆NtVkSITE :01/08/29 20:56 ID:EqArAK56
<subback>
1)bbs.cgi をとめる
2)各ファイル名を変更する
mv subback.html subback2.html;
3)bbs.cgi が出力するファイル名 subback.html を subback2.html にする
4)bbs.cgi が subback2.htm(gzip圧縮) を作るようにする
5)復帰スクリプトが出力するファイル名も、同様に変える
5)index2.htm index2.htmlは、以下のようにreflashでジャンプするよう記述する
<HTML><HEAD>
<META HTTP-EQUIV="refresh" content="1;URL=http://xx.2ch.net/xxxx/subback.cgi">
</HEAD><BODY>
<A HREF="http://xx.2ch.net/xxxx/subback.cgi">クリック</A>
</BODY></HTML>
6)bbs.cgi を稼働状態に戻す

324 :319 :01/08/29 20:58 ID:ps40cZfg
俺は,302じゃなかった。マジで鬱。
302さんcommitありがとう。そして、ゴメソ。

325 :音楽侍 ◆NtVkSITE :01/08/29 20:59 ID:EqArAK56
<bbsmenu.html/bbstable.html>
1)各ファイル名を変更する
mv bbsmenu.html bbsmenu2.html; mv bbstable.html bbstable2.html
2)それぞれを gzip 圧縮したファイルを作る
3)bbs[menu/table].html は 以下のように記述する
・bbsmenuの場合
<HTML><HEAD>
<META HTTP-EQUIV="refresh" content="1;URL=http://xx.2ch.net/xxxx/bbsmenu.cgi">
</HEAD><BODY>
<A HREF="http://xx.2ch.net/xxxx/bbsmenu.cgi">クリック</A>
</BODY></HTML>
・bbstableの場合
<HTML><HEAD>
<META HTTP-EQUIV="refresh" content="1;URL=http://xx.2ch.net/xxxx/bbstable.cgi">
</HEAD><BODY>
<A HREF="http://xx.2ch.net/xxxx/bbstable.cgi">クリック</A>
</BODY></HTML>

326 :♯6411 :01/08/29 21:04 ID:zwWJLRVA
>>319 このスレか過去スレに、
deflate対応してみた、
ってカキコがあったような気がしたので、
もしかして、うまく逝ったのかなあと
思いこんでたんだけど、
自身で追試はしていないす。
ためしにIISなサイトをたたいてみたけど、
Encodingしてくれなかった。してくれるって噂だったのに。

で、deflateじゃなくてinflateのような気がした…

327 :デフォルトの名無しさん :01/08/29 21:05 ID:22fiFnTw
タグは小文字にしませんか? いや、別にどうでもいい部分なんですが。

328 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:07 ID:hNInjuxs
>>320
ftp://210.170.170.118/incoming/index/xxxxx.cgi
を更新しました(ファイルテスト演算子 _ 関連)。
旧ファイルは xxxxx.cgi.old です。
これで作業終了のはず。
ちょっと20分ほど席はずします。すいません。

329 :デフォルトの名無しさん :01/08/29 21:18 ID:iU.Fd0UU
今CVSに入ってるのって"Content-Length"対応なんですか?

gzipped_fwrite()が実行されないのに終了処理のところで

if ( gzip_flag == 2 ) {
    fprintf(stdout,"Content-Encoding: x-gzip\n");
} else {
    fprintf(stdout,"Content-Encoding: gzip\n");
}
fprintf(stdout,"Content-Length: %d\n\n",outlen);
fflush(stdout);

fwrite(outbuf,1,outlen,stdout);

を実行するようなコードになってるっぽいですが......

330 :デフォルトの名無しさん :01/08/29 21:21 ID:ps40cZfg
gzipped_fwriteは、zlib/gzio.cが呼びます。

331 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:25 ID:hNInjuxs
>音楽侍 ◆NtVkSITE さん
それぞれの.htmlファイルはftp://210.170.170.118/incoming/index/
作成済みです。>>320のような若干の置換が必要ですが。
その他の部分は、いまから読みますです。
>>327
大文字のは _lc に移して、小文字のに置き換えました。

332 :♯6411 :01/08/29 21:25 ID:zwWJLRVA
できれば、gzipされてないときも
Content-Length吐いてもらえる
ようにできませんか?
squidにキャッシュされない原因は、これか?

333 :329 :01/08/29 21:28 ID:iU.Fd0UU
>>330 なるほど了解 逝ってくる......

334 :音楽侍 ◆NtVkSITE :01/08/29 21:29 ID:EqArAK56
>>331
了解です〜
終わったら、
転送量(料)の増加で2ch閉鎖の危機!9
http://teri.2ch.net/test/read.cgi?bbs=accuse&key=999059369
にいってマァヴさんにお願いすると、DolBackyさんに伝わります。
新スレにみんな貼って、誘致活動を・・・が良いかと思います。

335 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:34 ID:hNInjuxs
...そういえば、動作確認していない。
負荷はかからないので、どなたかperlのあるweb鯖で実験して
いただけませんか?
(あと、じつは /usr/local/bin/perl だったりしないか心配)
>>334
お疲れさまです。もうしばらくお待ち下さい。

336 :♯6411 :01/08/29 21:37 ID:zwWJLRVA
ためしにExpiresを実装してみたものの、
どうも芳しい結果が得られない。
つぎcommitする際に殺したまま入れとくので
どなたか追試きぼーーーんぬ

337 :anony ◆3XTuRnAc :01/08/29 21:41 ID:2kMI.7hA
>娘。さん
午前0時回ると思いますが、家に帰れれば実験台になれるかも。
もしよろしければ、「実験に必要なファイル」をまとめて、
「実験に必要な手順」を簡単にでも良いですから書いてftp鯖に叩き込んでおいてくれれば。

・・・って、必要な手順は>>320-326ってことなら今から少しずつ予習しておきます。

#いまは会社にいないといけないんですよ・・・自分が直接絡んだところじゃないけど
#間接的に問題がでてて・・・・鬱。

338 :音楽侍 ◆NtVkSITE :01/08/29 21:42 ID:EqArAK56
>>335
ソース一式はどこですか?

339 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:54 ID:hNInjuxs
>>337-338
音楽侍 ◆NtVkSITE さんの書いてくださったのをもとに、コピペ直前まで
編集してみたので、読んでみてください。>>339-341

340 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:55 ID:hNInjuxs
1.
index2.html など転送量削減案

転送の帯域を抑えるため、各htmlコンテンツをgzipで提供するに当たり、
gzip対応しているブラウザにはgzip版を、非対応ブラウザにはテキスト版を
送信するcgiを挟みます。
このことにより、ブラウザのトラブルを回避し、圧縮された各コンテンツを
配給できます。

実装は以下の通り(index2.htmlの場合)

index2.cgi導入 → cgi内部でgzip対応を判断 → 適切な内容を表示 → (゚д゚)ウマー


>>2 に必要なファイル一覧と概要

>>3 にインストール方法

341 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:55 ID:hNInjuxs
2.
ftp://210.170.170.118/incoming/index/bbsmenu.html
ftp://210.170.170.118/incoming/index/bbstable.html
ftp://210.170.170.118/incoming/index/index2.html
ftp://210.170.170.118/incoming/index/subback.html
ftp://210.170.170.118/incoming/index/xxxxx.cgi

bbsmenu.html bbstable.html は www.2ch.net/ におけば、そのまま使えます。
index2.html subback.html は、ファイル内の "xxx" を鯖名に、"yyy" を板名に置換し、
さらに bbspink2 のときは"2ch.com"を"bbspink.net"に置換して、/板名/に置きます。
エディタなどの置換機能で全置換してだいじょうぶです。

xxxxx.cgi は、"xxxxx"を現在あるファイル名(拡張子抜き)に置き換えます。
たとえば index2.html の場合は、index2.cgi にします。
ソース中にも "xxxxx" があるので、同様に置き換えます。
こちらも、エディタなどの置換機能で全置換してだいじょうぶです。
板名や鯖名は気にしなくてよいです。

最終的にブラウザに表示される「実ファイル」は、xxxxx_r.html xxxxx_r.html.gz です。
index2.html -> index2_r.html
index2.htm -> index2_r.html.gz
subback.html -> subback_r.html
のようにリネームしてください。

342 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:55 ID:hNInjuxs
3.
<index2>
1)bbs.cgiをとめる
2)既存のファイル名を変更する
 mv index2.htm index2_r.html.gz
mv index2.html index2_r.html
3)bbs.cgiが出力するファイル名を変更する(bbs.cgi内で指定されているファイル名)
 index2.htm -> index2_r.html.gz
 index2.html -> index2_r.html
4)復帰スクリプトが出力するファイル名も同様に変える
5)ftp://210.170.170.118/incoming/index/index2.html をダウンロードし、
 "xxx" を鯖名に、"yyy" を板名にそれぞれ置換し、設置する。
6)ftp://210.170.170.118/incoming/index/xxxxx.cgi ダウンロードし、
 index2.cgi にリネームして設置。ソース内の "xxxxx" を "index2" に置換する。
7)bbs.cgiを稼働状態に戻す

343 :名無し娘。 ◆vP.bOZFQ :01/08/29 21:59 ID:hNInjuxs
簡単な実験方法は、
・同一ディレクトリに xxxxx.cgi xxxxx_r.html xxxxx_r.html.gz を置く。
 (xxxxx_r.html.gz は xxxxx_r.html を gzip compress したもの)
・ブラウザで xxxxx.cgi にアクセス。

344 :名無し娘。 ◆vP.bOZFQ :01/08/29 22:00 ID:hNInjuxs
>>343
あ、xxxxx_r.html は、適当な html ファイルでいいです。
よろしくお願いします。

345 :音楽侍 ◆NtVkSITE :01/08/29 22:02 ID:EqArAK56
sub time2lastmod{
my($time) = shift;
my($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst)
= gmtime($time);
$wday = qw(Sun Mon Tue Wed Thu Fri Sat)[$wday];
$mon = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)[$mon];
sprintf("%s, %02d %s %d %02d:%02d:%02d GMT",
$wday, $mday, $mon, $year+1900, $hour, $min, $sec);
}
ここでエラー出ます。
Can't use subscript on split at test.cgi line 77, near "$wday]"
Can't use subscript on split at test.cgi line 78, near "$mon]"
Execution of test.cgi aborted due to compilation errors.

346 :Perler ◆GSi39OA6 :01/08/29 22:12 ID:qGdmeavk
>>345
Perlのバージョンによる違いかな。。。

$wday = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat')[$wday];
$mon = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec)[$mon];

で試してみてください。

347 :Perler ◆GSi39OA6 :01/08/29 22:14 ID:qGdmeavk
$mon = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')[$mon];

Decの直後の記号が抜けてました。

348 :デフォルトの名無しさん :01/08/29 22:21 ID:NuzxCJ3M
use HTTP::Date qw(time2str);

time2str($time);

でいいのでは。

349 :Perler ◆GSi39OA6 :01/08/29 22:24 ID:qGdmeavk
>>348
入ってない可能性高すぎ。

350 :名無し娘。 ◆vP.bOZFQ :01/08/29 22:25 ID:hNInjuxs
>>346-347 を修正した上で、xxxxx.cgi を 4つの.cgiにわけておくことにしました。
導入の手順が簡単になります。

ftp://210.170.170.118/incoming/index/_readme.txt
をお読み下さい。

351 :音楽侍 ◆NtVkSITE :01/08/29 22:27 ID:EqArAK56
うちでは
sub time2lastmod{
use HTTP::Date qw(time2str);
time2str(my($time));
}
でいきましたです

352 :音楽侍 ◆NtVkSITE :01/08/29 22:29 ID:EqArAK56
HTTP1.1でやると、
hoge.cgiがダウンロードされてしまうです。

353 :名無し娘。 ◆vP.bOZFQ :01/08/29 22:32 ID:hNInjuxs
>>351-352
どうすればいいのだろう。。。(適切な処置がわからないらしい)

ところで、http://teri.2ch.net/test/read.cgi?bbs=accuse&key=999090223&ls=20

354 :デフォルトの名無しさん :01/08/29 22:35 ID:6wtO5bLA
>>352
HTTP/1.0だと動くってこと?

355 :Perler ◆GSi39OA6 :01/08/29 22:36 ID:qGdmeavk
>>352
具体的にはどういう現象でしょう?

>>353
HTTP::Dateは、インストールされていない環境がありうるので、
止めた方が良いと思います。

というか、入ってないんじゃないかと思う>2.ch

356 :音楽侍 ◆NtVkSITE :01/08/29 22:39 ID:EqArAK56
んと、
HTTP1.0 == htmlファイルの転送成功。リトライのキャッシュについては未調査
HTTP1.1 == gzipファイルが生で送られてくる
という状況です。

357 :191 :01/08/29 22:40 ID:THYp8YGg
>>342 番のだと、 Content-Encodingが 2回出てしまうことがあります。
ということでなおしました。
だけじゃなくてほかにもちょと変えました。
・ソースの整理
・gzipped じゃなくて生のもので存在、サイズをチェック
・/bin/perl をつかうようにした (/usr/bin/perl じゃないすよね?)
・FreeBSD 4.3 + 5.005_03 で動作確認

ftp://210.170.170.118/incoming/191/xxxxx.cgi にあります。

358 :Perler ◆GSi39OA6 :01/08/29 22:43 ID:qGdmeavk
>>356
それは、Transfer-Encodeを指定していないのにgzipファイルが送られてくるんでしょうか?
それともヘッダがないとか?
すみません、もうちょっと具体的に。。。。

>>357
うちは/usr/local/bin/perlに入ってたりしますが。。。。

Linuxだと/bin/perlがデフォルトなのかな。

359 :デフォルトの名無しさん :01/08/29 22:43 ID:fYk.8H92
>>341
|さらに bbspink2 のときは"2ch.com"を"bbspink.net"に置換して、/板名/に置きます。

"2ch.net"を"bbspink.com"でないですか?
ソース見てないので、見当違いだったらスマソ

なお、"(www.)2ch.com"は存在してるようです。

360 :音楽侍 ◆NtVkSITE :01/08/29 22:48 ID:EqArAK56
>>357
リロード確認・text/gzip確認
HTTP 1.0 / 1.1 ともに確認しました。OKです。

361 :音楽侍 ◆NtVkSITE :01/08/29 22:50 ID:EqArAK56
>>358
設定次第なので何ともいえませんが、Linuxの場合、localあってもなくても、どっちでも動くかと・・・

362 :デフォルトの名無しさん :01/08/29 22:51 ID:jgB/eHro
>323
前後関係よく分かってなくてすまんけど、それがやりたいだけなら下記で十分だと思う。
DOCTYPEがないが、それ以外は文法的にも全然OKの筈。

<title>飛べ</title>
<META HTTP-EQUIV="refresh" content="1;URL=http://xx.2ch.net/xxxx/subback.cgi">
<A HREF="http://xx.2ch.net/xxxx/subback.cgi">飛べ</A>

363 :デフォルトの名無しさん :01/08/29 22:57 ID:NuzxCJ3M
perl のパスが分からない時は

#!/usr/bin/env perl

でしてみましょう。

364 :191 :01/08/29 23:02 ID:THYp8YGg
それから、meta-refresh って現在の URL相対の指定できないんでしょうか?
どうせ index2.htmlとかは各板の directoryにおくものだから

<head><meta http-equiv="refresh" content="url=index2.cgi"></head>
<a href="index2.cgi">click!</a>

とかやれば index2.htmlをいちいち書き換えなくてすむのでは。
すくなくとも w3mでは相対指定効くようです。

xxxxx.cgi のほうも $0 をみるようにすれば、なかをいじらずに
ファイル名を変えるだけでどのファイルを送るかきめられるような。

365 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:08 ID:hNInjuxs
>>359
その通りです。失礼しました。
>>364
後半の方は、全種類こちらで用意します。

366 :デフォルトの名無しさん :01/08/29 23:13 ID:NuzxCJ3M
>>362 # refresh する html の文法

html のバージョンにもよるが、4.x の場合には
a 要素を div, p , h[1-6] などのブロック要素に入れる必要あり。
h1 なんかでいいんでは。大きくて。

367 :音楽侍 ◆NtVkSITE :01/08/29 23:15 ID:EqArAK56
名無し娘。さん。
一応、マァヴさんには、完成したら娘。さんが一報入れますって伝言してあります。
BackyさんにもQで伝達済みですので、よろしくです。
前にもお知らせしましたっけ?

368 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:16 ID:hNInjuxs
>>351-359 までは対応して ftp://210.170.170.118/incoming/index/ に置きました。

369 :Perler ◆GSi39OA6 :01/08/29 23:18 ID:qGdmeavk
>>364

そもそもRefreshってHTMLの仕様外の実装なので(もちろんHTTP/1.1にRefreshというヘッダが
あるわけでもない)、「てきとうでいい」というのが実際でしょう。

ですので、動作確認がとれれば相対URIでも良いのではないでしょうか。

あ、ただし、秒数は多くのクライアントで必須だったと思います。

そもそもHTML4.0には「Refreshは使うな」ってかかれてますし。緊急避難的に利用させてもらうことにしましたが。

370 :191 :01/08/29 23:19 ID:THYp8YGg
>>365 よろしくおねがいします。
でも本業がちっともすすまないよう。ヽ(`Д´)ノ ウワァァン!!

371 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:21 ID:hNInjuxs
>>366
目立たない方がいいような気もします。。。
ところで、ftp://210.170.170.118/incoming/index/bbsmenu.html は文法違反と
いうことでしょうか?
>>367
>>334 ですね(^^
>>369
となると、まさに動作確認次第ですね。。。

372 :191 :01/08/29 23:23 ID:THYp8YGg
>>369 げに。ということで実際問題としてどの程度の
clientが対応しているのかな。と。
Web作製とかの人の方が詳しいんだろうな。ヽ(`Д´)ノ ウワァァン!!

373 :Perler ◆GSi39OA6 :01/08/29 23:29 ID:qGdmeavk
>>371
HTML4.01だと、文法違反として、まず<TITLE>〜</TITLE>がないですね。
って私が最初に省略したようです。すみません。

あとは、<A>〜</A>が裸なのも違反になりますね。
実際閲覧時に問題になることは皆無だと思われますが。

374 :デフォルトの名無しさん :01/08/29 23:32 ID:fYk.8H92
フレームにするのは除外ですか?
二重になってしまうけど。

375 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:33 ID:hNInjuxs
>>373
ありがとうございます。直しておきます。

376 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:35 ID:hNInjuxs
>>375
...でも、<a>が裸なのは、read.cgiも同じだった(^^;
<title>だけつけて、かわりに"\n"けずっときます。

377 :デフォルトの名無しさん :01/08/29 23:36 ID:22fiFnTw
<a>のまえに<p>だけつけておけばよいと思うです。>裸

378 :Perler ◆GSi39OA6 :01/08/29 23:37 ID:qGdmeavk
>>374
それも考えましたが、リロード時に余計なトラフィックを喰うので止めました。

>>376
世に出回ってるHTMLドキュメントの多分95%くらいが違反だらけなので、
この際、クライアント依存の可能性がなければ細かい事は気にしなくて良いかと。

379 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:40 ID:hNInjuxs
>>378
じゃ、<title>もつけないでいいや(^^;
何度も何度も呼ばれるものだし。少しでも小さい方が。

ftp://210.170.170.118/incoming/index/ 以下、今のところfixです。

380 :♯6411 :01/08/29 23:42 ID:rpOycX/Y
いまダイジェストページ(index2.html相当)を
つくってんだけど、
…中規模の改造を施さないと
いけない…鴨。

鬱だ氏のう

381 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:48 ID:hNInjuxs
>>369
相対URL指定に、とても魅力を感じるのですが、やってみていいですか?(^^;
よければ、ftp://210.170.170.118/incoming/index/ 中身入れ替えて(別所に
絶対URL指定のものも残して置きつつ)、新スレ立てようかと。

382 :デフォルトの名無しさん :01/08/29 23:48 ID:99bXOuQI
...やっぱ<title>タグ入れませんか? ムダ?

383 :名無し娘。 ◆vP.bOZFQ :01/08/29 23:49 ID:hNInjuxs
>>382
ちょっと欲しい気もするので、入れてみます。

384 :Perler ◆GSi39OA6 :01/08/29 23:50 ID:qGdmeavk
良いと思います。

そもそも

Content-Encoding: gzip

を有無も言わさず送出している現状に比べれば、障害は少ないと思います。

もしある程度苦情が集まるようなら、その時点での対策で遅くないと思います。

385 :デフォルトの名無しさん :01/08/29 23:51 ID:ps40cZfg
既にread.cgiのスレじゃないな。

gzipしないときにContent-Length吐くのってどの程度効果があるんでしょう?
HTTP/1.1な奴ならgzip使うだろうし、HTTP/1.0じゃchunkしないだろうし。
proxyがchacheする可能性が増えるだけ?

386 :♯6411 :01/08/29 23:54 ID:rpOycX/Y
>>385 派外道。

いま見てみたんだけど、Length求めるの
ちょっとメンドくさいですね。
余力があったらしてみます。

ただいまdat_read() dat_out() 変造ちう

387 :385 :01/08/29 23:58 ID:ps40cZfg
Content-Lengthを出す分の転送量増加以上の効果が見込めるなら
やろうかと思って。

388 :名無し娘。 ◆vP.bOZFQ :01/08/30 00:00 ID:HrH04.b6
index2.cgi 系の新スレです。
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=999097075&ls=20

批判要望いってきます。

389 :名無し娘。 ◆vP.bOZFQ :01/08/30 00:05 ID:HrH04.b6
いってきました。
>>385
read.cgi のスレに復活です(^^;

390 :音楽侍 ◆NtVkSITE :01/08/30 00:07 ID:Sij0XJg6
>>369
さんくす〜〜

次からは(次があればだけど(笑))、思いついたらなるべくはやくスレ分けないと、混乱してモチベーション下がるです。

391 :♯6411 :01/08/30 00:08 ID:B5j.xDlI
>>385 実際のところ、たいていのSquidは
.cgi ? が出てくるURLをキャッシュしない
設定になってることがない、ようだ…うーむ。

392 :デフォルトの名無しさん :01/08/30 00:15 ID:xfLG9NB.
キャッシュを無効にするため、わざわざ index.html? なんてアクセスする奴も
居るんだから、Content-Length吐いたぐらいじゃだめでしょうね。

393 :音楽侍 ◆NtVkSITE :01/08/30 00:25 ID:Sij0XJg6
>>392
リフレッシュで飛ぶURL一緒なので、効くんじゃないんですか?

394 :♯6411 :01/08/30 00:29 ID:B5j.xDlI
ついにやりました(藁

トップページのダイジェストと同じ機能のものを
表示するモジュール


…の土台、つくりました。
あとは表示系をごてごていじり回れば、
index2.htmlに変わるものになる、はず。

すでにcommitしてあるので、
怖いもの見たさに覗いてみてくだちい。

395 :392 :01/08/30 00:31 ID:xfLG9NB.
ブラウザは効くでしょうけど、proxyに効くのかしら?

うーむ、squidのソースを展開してみたが、squid.confのサンプルが見つからないぞ。

396 :♯6411 :01/08/30 00:33 ID:B5j.xDlI
>>394 動かすのに必要なもの

/tech/subject.txt
/tech/dat/[最新10記事].dat

す。あとは、
http://localhost/test/read.cgi/tech
じゃ。

397 :名無し娘。 ◆vP.bOZFQ :01/08/30 00:34 ID:HrH04.b6
read.cgi なこと。


前スレ分:http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998845501&st=875&to=875&nofirst=true

Content-Length >>35-36 >>306 >>332 >>385-386 >>391-393 >>395
expire >>336
PATH_INFO >>264
ressplitter_split()
zz_GetEnv()
CUTRESLINK(imode)
COOKIE
dat,kako >>230
subback >>295
>>のリンク
zlib.h問題(解決?)
bzip >>271
deflate >>326
isbusy isimode nofirst >>41 >>101 >>167
LastMod(ls,st,to) >>127 >>134
mmap(lock) >>139
FORCE_304_TIMEの動的変動 >>297
NAME,MAIL欄の" " >>192
スレスト時FORM >>11
TopPage作成 >>394 >>396
r2chhtml.h >>78 >>93 >>114-115
r2chhtml.hいろいろ http://natto.2ch.net/test/read.cgi?bbs=hp&key=998774537
設定の外部化 FORCE_304_TIME LIMIT_PM LIMIT_AM CUTRESLINK(LIMIT_xMと別にする) >>49 >>53 >>55 >>85 >>90
その他 http://www.gedoh.org/aki/2ch/tiki/ にいろいろ

398 :♯6411 :01/08/30 00:34 ID:B5j.xDlI
>>395 逆に言えば、
.cgi という名前を隠して(どうやって?)
?を使わずにパラメータを渡せば(どうやって?)
Squidごとき騙せる…はず。

399 :デフォルトの名無しさん :01/08/30 00:36 ID:3dKaZzhQ
r2chhtml.hいろいろは、最近はこの辺でしょうか。
http://natto.2ch.net/test/read.cgi?bbs=hp&key=998774537&st=923

400 :- :01/08/30 00:36 ID:Ck0sz4AU
板トップで使われてる pageview.cgi のソースを
夜勤さんか誰かが公開してくれたらな・・・
きっと無理だろうが

401 :名無し娘。 ◆vP.bOZFQ :01/08/30 00:38 ID:HrH04.b6
>>400
やはりむかしむかーしのなら、もっていたりします。
あっぷしますか?

402 :395 :01/08/30 00:38 ID:xfLG9NB.
>>398
PATHINFO使えば、?は隠せます。
.cgiはhttp.conf触って、.x とかにしちゃえばOK。

403 :♯6411 :01/08/30 00:43 ID:B5j.xDlI
>>402
PATH_INFO...使ってます。
?を使わずにパラメータを渡すのは、どうにかなります(w

httpd.conf...いじれないんじゃないかなあ。
.htaccessまでいじれるんだったらいいんだけど。

404 :- :01/08/30 00:43 ID:Ck0sz4AU
>401
page=1 のときって、つまり index2.html と同じですよね?
何か違うのかな・・・機能停止されてるから確認できないや

405 :名無し娘。 ◆vP.bOZFQ :01/08/30 00:46 ID:HrH04.b6
>>404
こんなんでましたけどー

#==================================================
# もしページが1ならトップに戻す
#==================================================
if($FORM{'PAGE'}==1){
$PATH .= "index2.html";
print "Location: $PATH \n\n";
}

406 :395 :01/08/30 00:47 ID:xfLG9NB.
.htaccessはいじれるはず。
でも、AUTHのみ許可かも。

407 :- :01/08/30 00:51 ID:Ck0sz4AU
ニガワラ

408 :395 :01/08/30 00:56 ID:xfLG9NB.
squidちょっと調べてみた。
>hierarchy_stoplist cgi-bin ?
>acl QUERY urlpath_regex cgi-bin \?
cgi関係はこれしかないから、?さえはずせば、普通のsquidはキャッシュしそう。

409 :♯6411 :01/08/30 01:03 ID:VrJJ/gNY
>>408 いろんなサイトで
使用されているやつの
設定が(おそらく)
そんなふうになってるのが
問題なのですね…

410 :名無し :01/08/30 01:08 ID:qReivzgw
こんなの見つけた。

ftp://210.170.170.118/incoming/old_bbscgi/

411 :おや? :01/08/30 01:12 ID:FI3EZUgU
>>410
公開されていたんですねぇ…

412 :名無し娘。 ◆vP.bOZFQ :01/08/30 01:18 ID:HrH04.b6
>>410
あとremake.txtなんてのもありましたね。現行システムにあるかは知りませんが。

413 :名無し娘。 ◆vP.bOZFQ :01/08/30 01:19 ID:HrH04.b6
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998908154&st=235&to=236&nofirst=true
仕様でしたっけ?

414 :395 :01/08/30 01:31 ID:xfLG9NB.
>>409
設定ファイル中で強く推奨されてるので普通は変えないでしょう。

で、squid入れて試してみました。
Content-Lengthなくてもちゃんとキャッシュします。
?だけの問題ですね。
gzipしない時にContent-Length出すのは意味なさそう。

415 :♯6411 :01/08/30 01:38 ID:WaZdXN2I
>>414 いま自宅に帰ってきた。
Expireを見てくれない(?)のは、
IE5.5も。
どこかのカキコで、「IE5からは、Expireしてない
オブジェクトは要求すら出さない」って
書いてあったんだけど…read.cgiには
すぐ要求が出されてしまう。
もちろんread.cgiがそくざに304を返すけどね。

416 :Sherry ◆RKMbxbuc :01/08/30 01:38 ID:RowGKKaA
>>414
わたしは,

>hierarchy_stoplist cgi-bin ? cgi
>acl QUERY urlpath_regex cgi-bin \? cgi

に書き換えてます.いつも...
最近だと,/cgi-bin/ 以外にCGIを置く人が多いので‥‥‥(^^;

417 :395 :01/08/30 01:47 ID:xfLG9NB.
>>416
変えないってのは、削らないって意味で、追加する人がいても不思議じゃありません。

>>415
squid.confの最後にそれ関係のものが書いてあるみたい。
5.5SP1より前のはどうこうで、ie_refreshなんてのが追加されてる。

333KB
新着レスの表示

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

0ch BBS 2004-10-30