网站性能优化方法

依据雅虎34条黄金法则:
一、尽量减少http请求次数
1.合并js、css文件
2.css sprites,减少图像请求
二、减少DNS查找次数
1.缓存DNS查找
2.减少主机名的数量
三、避免跳转
四、可缓存的AJAX
1.响应通过Expire或者Cache-Control头来实现缓存
五、推迟加载内容
六、预加载
1.无条件加载:在onload事件触发时加载
2.有条件加载:根据用户操作判断用户可能去往的页面并预加载其内容
3.有预期的加载:载入重新设计过的页面时使用预加载
七、减少DOM元素数量
八、根据域名划分页面内容
域名数量在2-4个之间
九、使iframe的数量最小
十、不要出现404错误
十一、使用内容分发网络CDN
用户与你网站服务器的接近程度会影响响应时间的长短,最好放置静态内容
十二、为文件头指定Expires(静态内容)或Cache-Control(动态内容)
十三、Gzip压缩文件内容
十四、配置ETag
十五、尽早刷新输出缓冲
十六、使用get来完成ajax请求
十七、把样式表置于顶部
十八、避免使用css表达式
十九、使用外部javascript和css
二十、削减javascript和css
二十一、用<link>代替@import
二十二、避免使用滤镜
二十三、把脚本置于页面底部
使用defer
二十四、剔除重复脚本
二十五、减少DOM访问
避免节点深层级嵌套
二十六、开发智能事件处理程序
二十七、减小cookie体积
二十八、对于页面内容使用无cookie域名
用子域名存放静态内容
二十九、优化图像
压缩,PNG
三十、优化css spirite
水平排列
颜色相近的组合在一起
缩小空隙
三十一、不要在html中缩放图像
展示多大的图片,这图片就不要大于这个尺寸
三十二、favicon.ico要小而且可缓存
三十三、保持单个内容小于25k
iPhone不能缓存大于25k的
三十四、打包组件成复合文本
其他
1.避免空链接属性,img、a等,有多少个,当前页面的服务器就会被请求多少次
2.避免Table布局
3.显示指定文档字符集
4.显式设置图片的宽高
5.图片使用webp格式