【发布时间】:2019-12-13 01:30:53
【问题描述】:
我正在尝试使用 Apache mod_deflate 模块添加 GZip 压缩。除文本文件(“.txt”)外,所有内容都被压缩。在压缩 HTML 文件和 JS 文件时也会遇到问题。
例如:假设一个脚本文件(“main.js”)托管在http://example.com
文件内容:
情况1:
// Contents of main.js
console.log("Hello World");
console.log("Hello World");
console.log("Hello World");
console.log("Hello World"); console.log("Hello World");
情况2:
// Contents of main.js
Hello World! Hello World!
Hello World! Hello World! Hello World!
Hello World! Hello World! Hello World! Hello World!
Random Contents
情况1,当我访问http://example.com/main.js时,显示内容编码:gzip。
情况 2,当我访问http://example.com/main.js 时,它没有显示任何 content-encoding: gzip 标头。
所以 GZip 仅适用于 .js 文件的情况 1。
GZip 不适用于文本文件(.txt 扩展名)并且不显示任何内容编码:gzip 标头。
// .ht 访问代码
<IfModule mod_deflate.c>
<IfModule mod_mime.c>
AddType text/plain .txt
</IfModule>
SetOutputFilter DEFLATE
</IfModule>
我的软件列表
- Apache 版本 - 2.4.39
- PHP 版本 - 7.3
- 操作系统 - Windows 10
- 软件 - Wamp 64Bit
【问题讨论】:
-
如果去掉
SetOutputFilter DEFLATE这行,js文件还压缩吗? (我的猜测是压缩来自其他地方,你的 .htaccess 没有效果。) -
否,删除此 GZip 后完全禁用。
标签: php html apache .htaccess gzip