mod_deflate问题 - 压缩可执行文件

Problem with mod_deflate - compressing executable file

提问人:Mylon 提问时间:6/16/2019 最后编辑:BPDESILVAMylon 更新时间:6/17/2019 访问量:464

问:

尝试在站点中下载扩展名为 .EXE 的文件时,文件以 .广州 环境 琴托斯 7 64 阿帕奇 2.4.6

更改 /etc/httpd/conf/httpd.conf 中的文件 我已经尝试使用以下每种形式,但是无济于事(我重新启动了 apache 并在每次尝试时删除了浏览器缓存):

1:

SetEnvIfNoCase Request_URI \.exe$ no-gzip dont-vary

2:

 <FilesMatch \.exe$>
        SetEnv no-gzip 1
    </FilesMatch>

3:

SetEnv mod_deflate off

4:

SetEnv no-gzip off

5: 在我评论的文件中:/etc/httpd/conf.modules.d/00-base.conf

LoadModule deflate_module modules/mod_deflate.so

6: 我试图删除该文件,但它不起作用。

/usr/lib64/httpd/modules/mod_deflate.so
apache mod-deflate

评论

0赞 Bogdan Stoica 6/16/2019
默认情况下,mod_deflate不会压缩.exe文件。您可能有一些导致这种压缩的自定义设置。我的服务器上启用了mod_deflate,我可以下载普通.exe文件
0赞 Mylon 6/17/2019
它可能是我正在使用的“AddType”指令。

答:

-1赞 Mylon 6/17/2019 #1

我正在查看httpd.conf,当我删除addtype指令(AddType application / x-gzip .tgz .rar .zip .exe .dll)时,EXE文件不再被压缩。

我之所以这样做,是因为浏览器启动下载EXE的时间太长,此外,RAR文件而不是下载,在浏览器中显示为二进制文件。

所以我做了以下解决(我不知道这是否是指示的输出,但我的知识还不够,我是这个领域的新手):

<IfModule mod_deflate.c>
# compress text, html, javascript, css, xml...:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/x-httpd-eruby
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch ^HMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|zip|bz2|rar|exe|pdf|doc|dll|jpg|sit|mp4|mov|mp3|3gp|webm|rm|avi|ogv)$ no-gzip dont-vary
<FilesMatch \.exe$>
ForceType application/exe
Header set Content-Disposition attachment
</FilesMatch>
<FilesMatch \.rar$>
ForceType application/rar
Header set Content-Disposition attachment
</FilesMatch>
</IfModule>

评论

0赞 Capsule 6/17/2019
只需为 exe 和 rar 定义正确的 mime 类型即可。使用 FilesMatch 声明是矫枉过正
0赞 Mylon 6/17/2019
我该怎么做?
0赞 Capsule 6/18/2019
用 : httpd.apache.org/docs/2.4/mod/mod_mime.html#addtypeAddType