您的位置:首页 > 运维架构 > 网站架构

如何实现前端优化提高网站访问速度

2012-01-16 16:56 906 查看

如何实现前端优化提高网站访问速度?

前端优化的意义在于减少http请求,减少网站前端程序组成的体积。具体有以下五种方法:优化网站图片(为了减少图片体积达到最快的下载速度,每一张图片上传前应该优化一下体积)、精简和优化你的JS和CSS、缓存你的JS和CSS文件、把你的JS库文件地址替换成Google CDN的地址、使用css sprites合并图片等等。

前端优化的意义在于减少http请求,减少网站前端程序组成的体积。具体有以下五种方法:

(一)优化网站图片
  大量使用的图片和图标虽然可以给网站带来美的效果,图文混编更是一种非常绚丽的博文展现方法。可图片的体积确实不是很给力,jpg是一种有损压缩格式,而png虽然是无损的缺憾是体积颇大。为了减少图片体积达到最快的下载速度,每一张图片上传前应该优化一下体积。专注于前端的
yslow 有一个工具叫 smushit,下载地址:http://www.smushit.com/ysmush.it/,此工具是一个无损压缩图片的工具,可以把你的图片在保持原质量不变的前提下优化体积。而这种优化体积通常在
10% 以上。意味着一张30KB的图片优化后只有 27KB 或者更少……

(二)精简和优化你的JS和CSS

  虽然有了缓存和gzip保驾护航,但是对于JS和CSS的优化却也是必须的。我们写的javascript脚本和css代码都是经过缩进和换行的,适合人类阅读,但是浏览器执行这些脚本不并需要这些无意义的空格和换行。所以我们应该去除这一些空格换行,甚至缩短 javascript 和 css 里面的变量。诸如此类的优化工具有
YUI Compressor 和 Closure Compiler 。这两个工具都是基于 java 的,使用应该安装jdk并且设置 JAVA_HOME 。

(三)缓存你的JS和CSS文件

在网站根目录 .htaccess 中加入以下代码

<ifmodule mod_expires.c>

<filesmatch "\.(jpg|gif|png|css|js)$">

ExpiresActive on

ExpiresDefault "access plus 1 year"

</filesmatch>

这段代码的意思是对 jpg|gif|png|css|js 发送 header 缓存头,进行一年的缓存、在浏览器不使用 ctrl+F5 强制刷新时,会一直缓存到时间结束,唯一遗憾的是如果你更改了js或者css文件必须把以前的路径或者文件名更改,可以这样 base.js?ver=(x) 这种方式下次浏览器就会自动读取并缓存。

(四)把你的JS库文件地址替换成Google CDN的地址

  随着jquery和mootools等js库的使用需要加载的.js文件越来越多也越来越大,通常传统的网站是上传到网站本身的目录。但对于一个接近70多KB的jquery.js体积确实不利于网站响应速度的提升,此时就应该使用Google API。不单是jquery库,其他诸如mootools yui 也可以使用这种方式。

(五)使用css sprites合并图片
  一个网站经常使用小图标和小图片进行美化,但是这些小图片占用了大量的HTTP请求,因此可以采用sprites的方式把所有的图片合并成一张图片,可以通过一些网址在线合并,也可以在photoshop或fireworks中合并。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息