怎么提高网页的加载速度
1、利用浏览器缓存你的 js 和 CSS 文件:
在网站根目录 .htaccess 中加入以下代码
ExpiresActive on (这里要换行) ExpiresDefault “access plus 1 year”
这段代码的意思是对 jpg|gif|png|css|js 发送 header 缓存头,进行一年的缓存、在浏览器不使用ctrl+F5 强制刷新时,会一直缓存到时间时间结束,唯一遗憾的是如果你更改了js或者css文件必须把以前的路径或者文件名更改,可以这样 base.js?ver=(x) 这种方式下次浏览器就会自动读取并缓存。
2、把你的 .js 库文件地址替换成 Google CDN的地址:
随着 jquery 和 mootools 等js库的使用需要加载的.js文件越来越多也越来越大,通常传统的网站是上传到网站本身的目录。但对于一个接近70多KB的jquery.js体积确实不利于网站响应速度的提升,此时就应该使用Google API
例如:把你的 http://www.***.cn/jquery.x.x.js 替换为http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js,
其意义在于当一个 用户访问过使用 google api 的网站之后,再次访问其他调用了该api地址的网站就不需要再次加载该文件了。从而达到提速的目的。
不单是jquery库,其他诸如mootools yui 也可以使用这种方式。
3、精简和优化你的 js 和 CSS:
虽然有了缓存和gzip保驾护航,但是对于 js 和 css 的优化却也是必须的。我们写的javascript脚本和 css 代码都是经过缩进和换行的,适合人类阅读,但是浏览器执行这些脚本不并需要这些无意义的空格和换行。所以我们应该去除这一些空格换行,甚至缩短 javascript 和 css 里面的变量。诸如此类的优化工具有 YUI Compressor 和 Closure Compiler 。这两个工具都是基于 java 的,使用应该安装jdk并且设置 JAVA_HOME 。(对于非程序员的网站管理员而言确实有点困难)
此工具可以不用在本地安装jdk,直接上传 js 和 css 文件进行压缩,可选择是采用 YUI Compressor 或 Closure Compiler。
4、GZIP 压缩你的 JS 和 CSS 文件:
压缩js和css可以通过服务器动态脚本进行也可以更简单的使用apache服务器可以在网站根目录 .htaccess 中加入以下代码
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-javascript application/json
Header append Vary Accept-Encoding
这段代码的意思是调用服务器的压缩模块对以上文件输出之前进行GZIP压缩,gzip的压缩之后所有文件都应该能减少30%以上的体积。特别是对于大量使用js的博客有了gzip保驾护航之后速度能提高不少。
5、精灵图
精灵图就是通过设置背景图片,只是简单的一张背景图片,通过定位来达到不同图片的效果,但浏览器只是加载了一张图片,大大缩减了浏览器加载页码的压力。
6、优化你网站图片:
大量使用的图片和图标虽然可以给网站带来美轮美奂的效果,图文混编更是一种非常绚丽的博文展现方法。可图片的体积确实不是很给力,jpg是一种有损压缩格式,而png虽然是无损的,但缺憾是体积颇大。为了减少图片体积达到最快的下载速度,每一张图片上传前应该优化一下体积。专注于前端的yslow有一个工具叫smushit :http://www.smushit.com/ysmush.it/
7. 利用浏览器缓存:
浏览器缓存是允许访客的浏览器缓存你网站页面副本的一个功能。这有助于访客再次访问时,直接从缓存中读取内容而不必重新加载。这节省了向服务器发送HTTP请求的时间。此外,通过优化您的网站的缓存系统往往也会降低您的网站的带宽和托管费用。
8. 最小化重定向
重定向增加了额外的HTTP请求,因此也增加了页面加载时间。然而有时重定向却是不可避免的,如链接网站的不同部分、保存多个域名、或者从不存在的页面跳转到新页面。重定向增加了延迟时间,因此要尽量避免使用它。检查是否有损坏的链接,并立即修复。
9. 使用内容分发网络(Content Delivery Network CDN)
服务器处理大流量是很困难的,这最终会导致页面加载速度变慢。而使用CDN就可以解决这一问题,提升页面加载速度。
CDN是位于全球不同地方的高性能网络服务,复制你网站的静态资源,并以最有效的方式来为访客服务
10. 减少DNS查询(DNS lookups)
减少DNS查询是一个WEB开发人员可以用了页面加载时间快速有效的方法。DNS查询需要话费很长的时间来返回一个主机名的IP地址。而浏览器在查询结束前不会进行任何操作。对于不同的元素可以使用不同的主机名,如URL、图像、脚本文件、样式文件、FLASH元素等。具有多种网络元素的页面经常需要进行多个DNS查询,因而花费的时间更长。
减少不同域名的数量将减少并行下载的数量,加速你的网站
思维总结:
以上介绍的6种优化方法都是前端的,前端优化的意义在于减少http请求,减少网站前端程序组成的体积。在后端优化也必不可少减少很多的数据库查询,通过内存缓存进行调用的数据缓存,才能获得最快的速度。当然影响网站打开速度的还有很多因素,相对于的解决方法也有很多,比如我们前段时间提到的《如何解决点击次数影响网页加载速度的问题》,就是专门来解决因为点击功能导致的网页打开过慢的问题,有这方面问题的朋友,也可以查看下。同时也希望大家有解决网页提速问题的方法,也能跟大家分享一下。http://www.mahaixiang.cn/CMS/172.html