2011-11-16 75 views
3

我在我的Apache配置文件中有VirtualHost定义。在这个定义中,我实现了SetOutputFilter DEFLATE。我的问题是我需要从尺寸小于10k的放气中排除文件。 当我尝试使用SetEnvIf Content-Length“^ [0-9] [0-9]?[0-9]?[0-9]?$”no-gzip函数时,它不起作用。由于我的请求的内容长度被排除在响应之外Apache DEFLATE配置

回答

2

可以在请求中设置一些特定的标头。基于这个头文件,Apache可以决定是否压缩你的页面。

LoadModule deflate_module     /modules/mod_deflate.so 
LoadModule headers_module     /modules/mod_headers.so 

<IfModule mod_deflate.c> 
    <IfModule mod_setenvif.c> 
     BrowserMatch ^Mozilla/4 gzip-only-text/html 
     BrowserMatch ^Mozilla/4\.0[678] no-gzip 
     BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
     BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html 
    </IfModule> 
    <IfModule mod_headers.c> 
     Header append Vary User-Agent env=!dont-vary 
    </IfModule> 
    SetEnvIf DoCompress "^true" no-gzip dont-vary 
    AddOutputFilterByType DEFLATE text/css application/x-javascript text/html 
</IfModule>