关闭

web前端优化之GZIP组件缓存

标签: 优化webjavascript服务器扩展
3029人阅读 评论(0) 收藏 举报
分类:

web前端14 条优化军规:


1.尽可能的减少 HTTP 请求数,可以使用CSS Sprites尽量将图片集成在一个大图片里。
2.使用 CDN
3.添加 Expires 头 ( 或者 Cache-control)
4.Gzip 组件缓存技术
5.把 CSS 样式放在页面的上方。
6.将脚本放在底部 ( 包括内联的 )。
7.避免在 CSS 中使用 Expressions。
8.将 javascript 和 css 独立成外部文件。
9.减少 DNS 查询。
10.压缩 JavaScript 和 CSS 文件 ( 包括内联的 )。
11.避免跳转redirect。
12.移除重复的脚本。
13.配置 ETags。

14.缓存 Ajax 请求 。


开GZIP有什么好处?
答:Gzip开启以后会将输出到用户浏览器的数据进行压缩的处理,这样就会减小通过网络传输的数据量,提高浏览的速度,提升用户体验。
Windows IIS开启GZIP方法:http://url.cn/2GcaeX
步骤:
首先,如果你需要压缩静态文件(HTML),需要在硬盘上建一个目录,并给它“IUSR_机器名”这个用户的写权限。如果压缩动态文件(PHP,asp,aspx)就不需要了,因为它的页面是每次都动态生成的,压缩完就放弃。然后在IIS管理器中,“网站”上面右键-属性,不是下面的某个站点,而是整个网站。进入“服务”标签,选上启用动态内容压缩,静态内容压缩。然后选中网站下面那个服务器扩展,新建一个服务器扩展。名字无所谓,下面的添加文件的路径是: c:\windows\system32\inetsrv\gzip.dll,然后启用这个扩展。这时候静态内容是可以压缩的,但是对于动态内容,aspx文件却不在压缩范围内。因为默认的可压缩文件并没有这个扩展名。而管理界面中你又找不到可以增加扩展名的地方,这时候只能去修改它的配置文件了。在c:\windows\system32\inetsrv\下面有个MetaBase.xml文件,可以用记事本打开,找到IIsCompressionScheme,有三个相同名字的段,分别是deflate,gzip,Parameters,第三段不用管它,前两段有基本相同的参数,在这两段的参数HcScriptFileExtensions下面都加上一行aspx,如果你有其它的动态程序要压缩,也加在这里。HcDynamicCompressionLevel改成9,(0-10,9是性价比最高的一个)。然后需要重启一下IIS服务,就可以体会到压缩后的速度了。


服务器Linux系统开启http://url.cn/0lGaZe
步骤:
1、首先得确认apache是否已经加载了mod_deflate模块。
httpd -M
如果mod_deflate模块不在列表中,可以参考文章:《Linux Apache安装加载mod_deflate模块》http://www.centos.bz/2011/09/linux-apache-install-mod-deflate-module/
即:

为了开启apache服务器中的gzip压缩功能,mod_deflate模块是必须安装加载的。现在介绍如何安装:
1、进入到mod_deflate.c目录

cd /lamp/httpd-2.2.20/modules/filters

2、执行编译加载程序

/usr/local/apache/bin/apxs -i -a -c mod_deflate.c

3、重新启动httpd程序

service httpd restart

4、查看是否已经加载成功

httpd -M

2、编译配置文件httpd.conf,增加支持gzip的文件类型,如下:


    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/atom_xml
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE application/x-httpd-php
    AddOutputFilterByType DEFLATE text/html

3、重启httpd。
service httpd restart
4、检验GZIP是否已经开启成功。

可到站长工具http://tool.chinaz.com/Gzips/输入网站的任一网址来测试。

相关请参考:
配置ETags方法》 :http://blog.chinaunix.net/uid-20714478-id-1888081.html
WEB缓存技术》http://blog.sina.com.cn/s/blog_4b9c94430100nro1.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3036110次
    • 积分:11412
    • 等级:
    • 排名:第1361名
    • 原创:120篇
    • 转载:45篇
    • 译文:2篇
    • 评论:167条