设置blog的缓存和压缩

在网站根目录下的.htaccess文件中添加以下代码

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType text/css A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
ExpiresByType text/javascript A2592000
ExpiresByType text/html A600
</IfModule>

<IfModule mod_deflate.c>
<FilesMatch "\.(js|css|html|htm)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>

<ifModule mod_gzip.c>
  mod_gzip_on Yes
  mod_gzip_dechunk Yes
  mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
  mod_gzip_item_include handler ^cgi-script$
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/x-javascript.*
  mod_gzip_item_exclude mime ^image/.*
  mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css)$">
Header unset Last-Modified
</FilesMatch>

FileETag none

现在使用Firefox的YSlow插件,以Small Site or Blog标准测试的分数为99分,以YSlow2(V2)标准测试的分数为94分,被扣掉的几分主要是因为没有使用CDN。所以现在速度已经被优化到了极致

赶快把它放到你的网站或blog根目录下的.htaccess文件里吧。

Q.E.D., ©zhiqiang, 2009.12.8。请参考右边的相关文章列表。


  1. 看了你说的东西了,很有趣 :-D ,可备用来害人

    但是文中所用的方法是无害的,不要误导大家~

  2. Pingback: 我的YSlow得分 @ agon - 破地儿

  3. 从读你那个系列开始受启发,又经过好长时间,再换个个主题,偶也要90多了

  4. Pingback: 设置blog的缓存和压缩 « 明教责任田

  5. 其实可以把gif和jpeg也加上(不少用户可能懒得或者没有对图进行优化),这样的话还能更省一些。

  6. 不知道你说的自动释放缓存是什么意思~

    如果使用上面的代码,浏览器端的缓存是服务器无法自动清除的,这是为了最大化优化速度,不需要浏览器端访问服务器询问文件是否修改。

    如果非要自动释放缓存,可通过更改url来实现,比如引用的css文件后面添加版本好,比如这样的: style.css?version=20091223

  7. Pingback: 小邓BLOG » 博客装修五

  8. Pingback: 我的YSlow得分 @ agon-小地儿

  9. 可能是因为我安装了缓存插件 Hyper Cache。使用你的代码,提示500错误

  10. 奇怪,我加了这个没什么问题。

    不知道是不是Header unset Last-Modified或者FileETag none的问题,因为其它的有条件判断,应该是没问题。

  11. 找到错误的原因了,我把代码贴到记事本 再贴到.htaccess里面可能这个过程中出了问题。我现在直接贴在htaccess里就正常了。不过可能我的主机不支持mod_expires和mod_deflate,YSlow测试才77。 :arrogant

  • 评论由多说提供支持。该系统支持使用微薄、人人网和QQ的账户登陆,由各自网站直接认证,不会泄露你的密码。
  • 登陆后可选择分享评论到所绑定的社交网络,如微薄、人人和QQ空间。
  • 评论无法修改。如需修改,请删除原评论重新提交。
  • 评论支持LaTeX代码,行内公式请用\(a+b=c\),行间公式请用\[a+b=c\]。公式只支持英文字符。
Loading...
Loading...
Loading...