zhuyubaiyu 2012-10-12
1.尽量减少http请求次数
合并js,css文件
利用CSS Sprites减少图片请求2.减少DNS查找次数
使用DNS缓存服务器
减少主机名数量(可能会影响并行下载效率)3.避免重定向
减少使用重定向
URL末尾有斜杠(/)却被忽略掉时,实际返回的是一个301代码的跳转,可以通过服务器rewrite避免
4.减少DOM元素数量
精简页面元素5.图片,脚本多域名
image[1-5]?.suning.cn图片
script.suning.cn JS/CSS/CSS脚本实现并行下载
6.减少iframe
<iframe>优点:
解决加载缓慢的第三方内容如图标和广告等的加载问题
Securitysandbox
并行加载脚本
<iframe>的缺点:
即时内容为空,加载也需要时间
会阻止页面加载
没有语意7.使用CDN
减少网络消耗,拉近用户与服务器距离,加快下载速度8.为文件头指定Expires或Cache-Control
对于静态内容:设置文件头过期时间Expires的值为“Neverexpire”(永不过期)
对于动态内容:使用恰当的Cache-Control文件头来帮助浏览器进行有条件的请求9.使用GZIP压缩
10.CSS样式表置于顶部
CSS置于顶部避免出现白屏加速页面展现
11.js懒加载js懒加载可通过动态在<head>标签中生成<script>标签的方式
12.图片懒加载
不直接展示的图片首次不加载,用户切换TAB,滚动屏幕时动态加载图片
通过修改<src>标签为<src2>,需要加载图片时更改为<src>的方式
15.压缩js和css
常用工具YUI Compressor,JSMin16.剔除重复脚本
重复脚本IE中会产生不必要的HTTP请求,Firefox中不会17.减少cookie体积
一方面减少cookie,另一方面由于cookie作用域通常设置在二级域名,加载图片,脚本时如果服务器域名相同可能会在请求中附带cookie,解决方法是静态资源使用无cookie的域名