1、减少http请求
例如:合并脚本,合并样式;使用外链脚本和样式,合理利用浏览器缓存;合并小图标为一个图片,利用css精灵等
2、使用内容分发网络(cdn)
3、添加expires头
expires使用一个特定的时间,它要求服务器和客户端的时钟严格同步,另外过期日期需要经常检查,并且一单未来这一天到来,还需要在服务器配置中提供一个新的日期。为了克服expires头的限制,http1.1引入了Cache-Control头,Cache-Control使用max-age指令指定组件被缓存多久。
当使用expires时,一旦被缓存,浏览器不会检查任何更新,直到过了过期时间。
如果一个组件没有长久的expires头,它仍然会存储在浏览器缓存中。在后续请求中,浏览器会检查组件并发现其已经过期,为了提高效率,浏览器会向原始服务器发送一个get请求,如果组件没有改变,原始服务器可以免于发送整个组件,而是发送一个很小的头,告诉浏览器可以使用其缓存的组件。(即过期了未必改动过)
4、压缩组件
从http1.1开始,web客户端可以通过http请求中的Accept-Encoding头来标识对压缩的支持,如果web服务器看到请求中有这个头,就会使用客户端列出来的方法中的一种来压缩响应,web服务器通过响应中的Content-Encoding:头来通知web客户端
配置:
apache1.3使用mod_gzip,apache2.x使用mod_deflate
5、将样式表放在顶部
6、将脚本放在底部
7、避免css表达式
8、使用外部js和css
单纯的讲,内链要比外链快。但是考虑到缓存,外链会得到更大的收益
9、减少dns查找
10、精简js
11、规避重定向
12、移除重复脚本
13、配置ETag(实体标签Entity Tag)
14、使ajax可缓存
本文介绍了一系列提高网页加载速度的方法,包括减少HTTP请求、使用CDN、添加Expires头、压缩组件、优化JS和CSS加载位置、减少DNS查找、精简JS代码、避免重定向等,旨在提升用户体验。
1441

被折叠的 条评论
为什么被折叠?



