我可以告诉mod_deflate和PHP只跳过一个目录上的压缩吗?
发布时间:2020-12-13 22:36:12 所属栏目:PHP教程 来源:网络整理
导读:要压缩我的所有网页,我使用这个.htaccess代码.如果可能,它使用Apache deflate模块,否则应用 PHP ob_gzhandler压缩. 一切正常,但由于特定原因,我不想对文件夹./folderWithoutCompression应用压缩. 问题:如果在下面的脚本中定义了Apache deflate模块(PHP ob_g
|
要压缩我的所有网页,我使用这个.htaccess代码.如果可能,它使用Apache deflate模块,否则应用
PHP ob_gzhandler压缩.
一切正常,但由于特定原因,我不想对文件夹./folderWithoutCompression应用压缩. 问题:如果在下面的脚本中定义了Apache deflate模块(PHP ob_gzhandler case),我该如何添加此异常? <IfModule mod_deflate.c>
# force deflate for mangled headers
# developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping/
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$^((gzip|deflate)s*,?s*)+|[X~-]{4,13}$HAVE_Accept-Encoding
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
</IfModule>
</IfModule>
# HTML,TXT,CSS,JavaScript,JSON,XML,HTC:
<IfModule filter_module>
FilterDeclare COMPRESS
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/css
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/plain
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/x-component
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/javascript
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/json
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xhtml+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/rss+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/atom+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/vnd.ms-fontobject
FilterProvider COMPRESS DEFLATE resp=Content-Type $image/svg+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/x-font-ttf
FilterProvider COMPRESS DEFLATE resp=Content-Type $font/opentype
FilterChain COMPRESS
FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no
</IfModule>
<IfModule !mod_filter.c>
# Legacy versions of Apache
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml
AddOutputFilterByType DEFLATE application/atom+xml
AddOutputFilterByType DEFLATE image/svg+xml application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font-ttf font/opentype
</IfModule>
</IfModule>
<IfModule !mod_deflate.c>
#Apache deflate module is not defined,active the page compression through PHP ob_gzhandler
php_flag output_buffering On
php_value output_handler ob_gzhandler
</IfModule>
编辑 解决方法是,我对folderWithoutCompression文件夹中的所有文件使用自定义内容类型. 我确信可以使用
我终于找到了答案:
How to disable mod_deflate in apache2? 谢谢@Gumbo # for URL paths that begin with "/foo/bar/"
SetEnvIf Request_URI ^/foo/bar/ no-gzip=1
# for files that end with ".py"
<FilesMatch .py$>
SetEnv no-gzip 1
</FilesMatch>
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
