$ENV{'HTTP_ACCEPT_ENCODING'}の値は?

[上に] [前に] [次に]
初心の者 1999/12/07(火) 21:15:47
if ($ENV{'HTTP_ACCEPT_ENCODING'} =~ /gzip/) {
print "Content-type: text/html\n";
if ($ENV{'HTTP_ACCEPT_ENCODING'} =~ /x-gzip/) {
print "Content-encoding: x-gzip\n\n";
} else {
print "Content-encoding: gzip\n\n";
}
open(STDOUT, "|/bin/gzip -1 -c");
} else{ 以下略
という方法があることを知ったので、
早速試してみようと思います。
質問なのですが、$ENV{'HTTP_ACCEPT_ENCODING'}には
そのブラウザが対応しているエンコード方式(?)が
', 'で区切られて入っているのでしょうか。
IE4(Win98)では"gzip, deflate"、
NN4.5(Win98)では"gzip"という値が入っていました。
gzip圧縮に対応していないブラウザは、
$ENV{'HTTP_ACCEPT_ENCODING'}の値に"gzip"が
含まれていないと言うことなのでしょうか。
また、|/bin/gzip -1 -cの-1って何なのでしょうか。
% man gzip としても
見あたらなかったのですが。(見落としでしょうか。)
よろしくお願いします。

きたむら 1999/12/07(火) 22:09:35
gzip圧縮に対応してないNN4.04(Win95)の結果ほうこくです。
HTTP_ACCEPT_ENCODINGは、まったく設定されていませんでした。
というわけで、初心の者さんのチェックで、うまくはねられます(T_T)

ついでに"-1"は"--fast"(速度最大)と同じ意味です。ちなみに"-9"は"--best"(圧縮率最大)。
あ。たしかにman gzipだと"-1"では見つかりませんね("-#"って書いてありました)。

初心の者 1999/12/08(水) 01:02:52
きたむらさん、ありがとうございました。

もう一つ質問があるのですが、
$ENV{'HTTP_ACCEPT_ENCODING'}にx-gzipをセットするブラウザって
何なのでしょうか。"gzip, x-gzip"とセットされるのか、
"x-gzip"とセットされるのかもわかりません。
ソースからでは判断できないもので・・・。
ブラウザをいくつも入れるだけの余裕がないので、
試すことが出来ません。ご存じの方がいらっしゃいましたら、
教えていただけないでしょうか。

[上に] [前に] [次に]