Chromium: tar.gz の解凍を防止

Chromium: tar.gz の解凍を防止

最新の Chrome と Chromium は、OS X と Linux で .tar.gz ファイルを自動的に解凍するようです。wget同じ URL で使用すると、次のように表示されます。

$ wget http://mydomain/dir/file.tar.gz
...
HTTP request sent, awaiting response... 200 OK
Length: ... [application/octet-stream]
...

ファイルの種類を確認しています:

$ file file.tar.gz
file.tar.gz: gzip compressed data, from FAT filesystem (MS-DOS, OS/2, NT)

Chrome または Chromium でダウンロードしたファイルに対して同じことを実行する場合:

$ file file.tar.gz
file.tar.gz: POSIX tar archive

Chrome/Chromium ではファイル名はそのままですが、拡張されています (ファイル サイズは wget でダウンロードしたファイルの約 4 倍になります)。

ウェブサイト管理者として、Chrome/Chromium がファイルを解凍するのを防ぐにはどうすればよいですか?

アップデート:

curl -I http://mydomain/dir/file.tar.gzApache/Tomcatの組み合わせによると、

Content-Encoding: x-gzip

他のウェブサイトから試した.tar.gzファイルは Chrome で解凍されず、ヘッダーも報告されないのでContent-Encoding: x-gzip、関係があるようです。

答え1

ウェブ サーバーはヘッダー.tar.gz付きのファイルを送信している可能性がありcontent-encoding: gzip、その結果、ウェブ ブラウザーは帯域幅を節約するためだけに gzip レイヤーが適用され、実際に送信しようとしていたのはアーカイブであると想定します。Chrome は、gzip 圧縮された他のファイル ( 、、など) を受信する.tar場合と同様に、反対側でそれを gzip 解凍します(ただし、ファイル名は変更されません)。.html.js.css

これを修正するには、Web サーバーがヘッダー.tar.gzなしでファイルを提供することを確認しますcontent-encoding: gzip

より詳しい情報:https://code.google.com/p/chromium/issues/detail?id=83292

答え2

ホスティング プロバイダーによると、ヘッダーはContent-Encoding: x-gzipTomcat の前の Apache によって発生したとのことです。次の行を削除します。

LoadModule deflate_module               modules/mod_deflate.so

その構成から問題は解決しました。

関連情報