一、 压缩组件
前两节都是通过减少 HTTP 请求数量来提高性能的,而本节是通过减少 HTTP 响应的大小来提高性能的。
从 HTTP1.1 开始, Web 客户端可以通过 HTTP 请求中的 Accept-Encoding 头来标识对压缩的支持。采用 gzip
或 deflate 。需要被压缩的主要是 HTML 、 CSS 、脚本、 XML 、 JSON 在内的任何文本。图片和 PDF 已经压
缩过,所以不需再进行压缩。
Apache 中添加 deflate 的配置例子:
第一步:
LoadModule deflate_module modules/mod_deflate.so
第二步:
<IfModule deflate_module>
SetOutputFilter DEFLATE
# 设置压缩级别,从 1-9 ,数字越大压缩比例越大
DeflateCompressionLevel 9
AddOutputFilterByType DEFLATE text/html text/javascript text/plain text/xml text/javascript text/css application/x-httpd-php
AddOutputFilter DEFLATE css js
</IfModule>
无压缩的示例:
http://stevesouders.com/hpws/nogzip.html
压缩 HTML 的示例:
http://stevesouders.com/hpws/gzip-html.html
压缩所有组件的示例:
http://stevesouders.com/hpws/gzip-all.html