一、尽可能的减少HTTP请求
每一个图片,文字,js文件,css文件都是一个请求。
可以通过合并来请求来减少HTTP请求
比如:图片为一个请求,js文件为一个请求,css为一个请求
二、使用CDN
CDN:在离你最近的地方,放置一台性能好,链接顺畅的副本服务器,让你能够以最近的距离,最快的速度获取内容。
三、添加Expire/Cache-Control头
如果apache开启了expire模块,当浏览器发送资源请求时,apache同时会返回一个expire的http头,这个头的内容是一个时间值,值就是资源在本地的过期时间、存在本地。在本地缓存阶段,找到一个对应的资源值,当前时间还没超过资源的过期时间,就直使用这一个资源,不会发送http请求。
Cache-Control是http协议中常用的头部之一,顾名思义,他是负责控制页面的缓存机制,如果该头部指示缓存,缓存的内容也会存在本地,操作流程和expire相似,但也有不同的地方,cache-control有更多的选项,而且也有更多的处理方式。
四、启用GZIP压缩
五、将CSS放在页面最上面
六、将js放在最下面
七、避免在css中使用Expressions
八、把JS和CSS放到外部文件中
优点:提高了js和css的复用性,减小页面体积,提高了js和css的可维护性
缺点:增加了请求数(可以缓存下来)
写在页面内的情况:
1、只应用于一个页面。
2、不经常被访问到。
3、脚本和样式很少。
九、减少DNS查询
十、压缩js和css
十一、避免重定向
重定向:用户想要访问的a被重新指向了b。
十二、移除重复的脚本
十三、配置实体标签(ETag)
ETag:Entity Tag,一种标识
如果服务器和浏览器的ETag一样,就直接使用自己的,不需要再在服务器请求。
十四、使用AJAX缓存
post不使用
get使用