按照yslow建议优化WordPress速度

9月13日 · 2012年

对比各种博客程序,Wordpress的速度不能说是很快,也许因为wordpress太强大,代码太多或者什么的。更重要的是需要自己结合自己博客的情况进行优化。这两天一直在优化小博的东西,终于拿到了A级的评分,而且网站速度也有了明显的提高!

什么是YSlowYSlow是Yahoo发布的一款基于FireFox的插件。YSlow可以对网站的页面进行分析,并告诉你为了提高网站性能,如何基于某些规则而进行优化。YSlow可以分析任何网站,并为每一个规则产生一个整体报告,如果页面可以进行优化,则YSlow会列出具体的修改意见。

User fewer HTTP Requests:减少HTTP请求

        图片、CSS、JS、flash等这些都需要增加http请求数,减少这些元素的数量能减少响应时间。

把多个JS、CSS尽可能合并压缩(除了JS库,用Google网站提供的会更好)

小图片尽可能拼在一起,利用CSS的background定位。

 

Use a Content Delivery Network 利用CDN技术

        这个可以有效的减轻网页层与服务器之间的压力,在配合cache和lvs效果更佳。小博客就可以不予考虑了。

Avoid empty src or href 不存在的空路径

        类似于<img src=””>这样的链接不要出现。

Add an Expires headers 设置缓存控制

        在.htaccess文件里面加一段

<IfModule mod_expires.c>
#Expire Header
ExpiresActive On
ExpiresByType image/ico A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpg A2592000
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType text/css A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/html A0
</IfModule>

服务器如果不支持mod_expires就不可以用了。

Compress components with gzip 设置GZIP压缩

        在cPanel的网站优化里面选择第二项全部压缩就好了。如果不是cPanel,那么就启用gizppy插件或者参考其他文章开启gzip。

Put CSS at top CSS放头部

        正常网页都应该这样吧?

Put JavaScript at bottom JS放脚下

        如果你的网页不是特别依赖JS的效果,还是把JS放脚下比较好。

Avoid CSS Expressions 避免CSS 表达式

        每个CSS的教科书都会告诉你不要写Expressions,不解释了

Make Javascript and CSS external 使用外部JavaScript和CSS文件

        当然要这么做。

Reduce DNS Lookups 减少DNS查找

        减少网站从外部网站调用资源。

Minify Javascript and CSS

        JS和CSS最小化,很多工具都可以用来压缩他们。

Avoid URL redirects 避免重定向

        除了避免3XX类型的重定向,还有一个小问题,最好不要写aa.com/bb这样的网址,因为会被重定向到aa.com/bb/,虽然Apache可以使用mod_rewrite,但不这么写是最好的。

Remove duplicate javascript and CSS 删除重复脚本和CSS

        最常见的就是多次加载jquery了,用jsview查看下就一目了然了。

Configure ETags 配置ETags

        .htaccess里加入FileETag  None即可解决。

Make AJAX cacheable 设置AJAX的缓存

        AJAX的信息读取是异步的,这也表示用户不一定会等待这异步的响应,为避免重复的AJAX请求,设置缓存是优化性能的一个好方法。

Use GET for AJX requests

        AJAX用Get不要用Post,这个AJAX书里面都会介绍的。

Reduce the number of DOM elements 减少DOM元素数量

        这个需要xhtml有个好的构架。

Avoid HTTP 404 (Not Found) error 避免出现404错误页面。

        404对服务器还是用户都不好。

Reduce cookie size 减少cookie的大小

        cookie控制在4K以内。

Use cookie-free domains 使用域名无关性的Cookie

        这里是有关静态服务器的问题,主要是指一些静态文件比如说图片、CSS等等,如果没用二级域名,那么在请求这些的时候会发送cookie下的域名,但Server又不会理他,所以会浪费带宽和时间。

如果设置了泛域名,那只能重新申请一个域名来做静态的了。

比如说YAHOO,他的静态文件都在 yimg.com 上,客户端请求静态文件的时候,减少了 Cookie 的反复传输对主域名的影响。

Avoid AlphaImageLoader filter

        避免AlphaImageLoader滤镜的使用。

Do not scale images in HTML 不要对图片进行缩放

        W3C一直不提倡图片缩放,一方面是对服务器资源的浪费,另一方面也是对性能的浪费。

Make favicon small and cacheable 使图标尽可能小,并使用缓存。

      

60; 这里指的是favicon.ico了,前面已经设置过了favicon.ico缓存。

2 条回应
验证码
输入运算符及数字使等式成立
{{comment.validate_num1}} = {{comment.validate_num2}}
点赞确定
退出登录?
取消 确定
  1. 山姆2012-9-13 · 13:00

    哎~~~到处可见优化控的身影~~~ ❗

    • 猴猴2012-9-13 · 14:08

      @山姆
      速度快点是每个站长的梦想啊 😆