前台网站优化方案
1. 减少HTTP请求:图片、css、script、flash等等这些都会增加http请求数,减少这些元素的数量就能减少响应时间。把多个JS、CSS在可能的情况下写进一个文件,页面里直接写入图片也是不好的做法,应该写进CSS里,利用 CSS sprites 将小图拼合后利用background来定位。
2. Gzip压缩技术:
1) IIS压缩服务:
第一步:打开IIS,启用HTTP压缩服务----网站-->属性,选择服务。在HTTP压缩框中选中压缩程序文件和压缩静态文件,按需要设置临时目录。
第二步:启用WEB服务
第三步:修改MetaBase.xml开始 > 运行中输入 c:\windows\system32\inetsrv,找到 MeteBase.xml,先备份,在修改。(有的服务器不需要修改此文件便可以使用)
2)Apache修改
首先打开下面两个模块:LoadModule headers_module modules/mod_headers. so LoadModule deflate_module modules/mod_deflate. so
设置压缩比率,取值范围在1---9之间,设置太高会占用太多的CPU资源。DeflateCompressionLevel 3
3. 设置头文件过期或者静态缓存
浏览器会用缓存来减少http请求数来加快页面加载的时间,如果页面头部加一个很长的过期时间,浏览器就会一直缓存页面里的元素。不过这样如果页面里的东西变动的话就要改名字了,否则用户端不会主动刷新,看自己衡量了~ 这项可以通过修改.htaccess文件来实现。
4. 把CSS放在顶部,将JS放在底部。
5. 避免CSS表达式
6. 将JS和CSS进行压缩处理,使用<link>作为外部链接
7. 避免重定向问题,配置服务器
8. 删除重复脚本
9. 配置ETags,ETags步骤:
1)客户端请求一个页面A;
2)服务器端返回页面A,并在给A加上一个ETag;
3)客户端展现该页面,并且将页面连同ETag一起缓存;
4)客户端再次请求页面A,并将上次请求时服务器返回的ETag一起传递给服务器;
5)服务器检查该ETag,并且判断该页面自上次客户端请求之后还没有被修改,直接返回响应304
10. 缓存Ajax,关于ajax缓存问题,在下一篇博文中再说。
11. ajax请求最好实用GET,因为POST会和服务器有两次交互。
12. 在编写DOM的时候,一定要逻辑清楚,不要编写无用的dom节点。
13. 减小Cookie,由于cookie在服务器以及浏览器之间交换,所以设置合理的过期时间以及大小很有必要
14. 不要在HTML中缩放图片
15. favicon.icon的大小缓存它,并且控制在1KB以下。