共计 988 个字符,预计需要花费 3 分钟才能阅读完成。
在使用 Apache2.X 的版本开始在默认都有开启 Gzip 页面压缩模块,即 deflate_module 和 headers_module,如果不确定可以用查看一下安装好的 Apache 下是否有这两个模块
[root@localhost ~]
# httpd -M|egrep 'deflate_module|headers_module'
httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain
for
ServerName
Syntax OK
deflate_module (shared)
headers_module (shared)
像这样一般都是有安装加载过的,而在 Apache 下开启 Gzip 配置也很简单只要在 http.conf 配置文件中简单配置下就可以实现,如下:
SetOutputFilter DEFLATE
# 开启强制输出过滤,当然也可以指定输入已某些文件的强制输入压缩
#AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript
DeflateCompressionLevel 9
# 启用压缩级别,1- 9 由低到高,级别越高压缩比例越高,但 CPU 的使用率也随之增高
在这里需要注意的有几点,开启 Gzip 时需要请求的资源必须是静态页面,如 php 这样的动态页面在压缩后又解压开来就没有实际的效果,其次是因为动态页面压缩没有效果所以在选择哪种资源需要过滤压缩时所用的过滤规则则有如下几种:
1、强制过滤器(SetInputFilter, SetOutputFilter),输入输出时强制指定压缩
2、选择性过滤器。分为按扩展名过滤 (AddHandler), 按 MIME 类型过滤 (AddInputFilter)
3、过滤器内部参数过滤,如 CaseFilter(文件过滤)
最后就是服务器资源问题,所使用的服务器是否有足够的 CPU 资源用于 Gzip 压缩,在成功开启页面压缩后用浏览器查看消息头就会有显示 Gzip 的字样:
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-11/148594.htm
正文完
星哥玩云-微信公众号