漩涡's Archivers

From 雨宫优子 on 2010-04-19 02:13:34

优化网站网页速度,让Wordpress快起来

使用国外空间,速度是一大难题,但是鉴于国内河蟹的形式,或者又不想为网站花钱,没法弄CDN。请看本文


[文章为原创,转载请注明出处]


那么只能从软件方面下手了



首先是减少页面开销,减少HTTP请求


尽量不要在页面中放入很多的图片、CSS、JS,不要为博客绚丽而去选择复杂臃肿的主题,简洁为美!


有一原则:HTML和CSS、JS分家[不要在HTML中插入CSS、JS,用SRC方式连接],CSS打头,JS收尾[CSS放在head中,JS放在HTML末尾],中间没有执行性JS,拒绝CSS Expression


图片最好选择PNG和JPG类型,分辨率和大小不要太高


JS和CSS能合并就合并吧,不过因为很多人的JS和CSS是因为插件冒出来的,所以就有了第二条


尝试不要安装过多的插件


过多的插件不仅会导致页面中的元素过多,还会导致WordPress整体反应运行速度下降


占用的资源增加,这点对免费空间使用者尤为敏感,国外的免费空间看起来是很大方,其实都有些看得见或看不见的限制,再加上是免费的,所以占用资源大了,说不准就直接关站了,连个招呼都不打,这样就杯具了


但是有时候实在想安装一些插件,怎么办呢?


使用缓存插件


缓存插件主要有几种:普通数据库缓存[DB cache],依赖WP程度较大的全HTML缓存插件【hyper cache】,依赖WP和地址重写[伪静态]的半HTML缓存插件【WP super cache】,基本不依靠WP但依靠伪静态的全HTML缓存【cos html cache】


如果你是无法使用伪静态【一般是WIN主机】且不喜欢折腾的,使用DB cache能有些作用


如果你支持伪静态同样不喜欢折腾,使用WP super cache也可以满足需求


如果你是无法使用伪静态,但喜欢折腾,使用hyper cache,在人流量不大的情况下,修改设置,开启在任何修改的情况下更新缓存这个选项,要不然,可能你等半天都不一定显示出你刚发的POST,访客也会看不到刚发的评论[不知道这个BUG修正了没],因为是全静态,因此有些问题会和cos html cache一样,看下面


如果你既支持伪静态又喜欢折腾,cos html cache是你的不二选择


这个的插件设置极少,只能删除HTML,启动它必须修改WP的固定连接为*.html样式【就像本站】


这样他就能生成实实在在的HTML文件以完全替代WP处理


但这样也会产生一些问题,例如,访客COOKIES失效了


大家如果做过其它博客的访客,会知道在第一次访问填写过昵称、Email、网站后,第二次评论就不用再填了,类似自动填表。这是要求WP处理的,因此可见WP super cache没有完全缓存。使用hyper cache也会有此问题


解决方案见下面的链接,用JS代替WP完成这些活


http://hellobmw.com/archives/cookie-validation-for-static-wordpress.html


另外就是一些采用博客自身数据库储存统计数据的插件会失效,这类统计不用在博客中添加代码,是通过博客自身进行统计的,方法就是换成别的外部统计


通过缓存,能够减小博客负载,加快速度,但是加快速度的秘诀不仅在此,还有个重要家伙——


开启GZIP输出


开启GZIP输出,LINUX主机有天生的优势,别以为弄个插件就完事,如果你是WIN主机的确只能这么做


LINUX主机可以通过修改htaccess实现JS和CSS一起GZIP输出,不仅输出html


APACHECONF CODE   :htaccess Gzip





1
2
3

<ifmodule mod_deflate.c>
AddOutputFilter DEFLATE html xml php js css
</ifmodule>






<ifmodule mod_deflate.c> AddOutputFilter DEFLATE html xml php js css gif </ifmodule>

这样又能快不少,但切忌往里面加入图片甚至是EXE,会严重加重主机负担


==============================


建议WIN主机不用往下看了


==============================


为图片、JS等基本不会变的元素设置较长浏览器cache过期时间


需要主机对mod_expires.c支持【】,在htaccess加入:


APACHECONF CODE   :htaccess mod_expires.c





1
2
3
4
5
6
7
8
9
10
11
12
13
14

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
ExpiresByType text/css A604800
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/plain A86400
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType video/x-flv A2592000
ExpiresByType application/pdf A2592000
</IfModule>







<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/x-icon A2592000 ExpiresByType application/x-javascript A2592000 ExpiresByType application/javascript A2592000 ExpiresByType text/css A604800 ExpiresByType image/gif A2592000 ExpiresByType image/png A2592000 ExpiresByType image/jpeg A2592000 ExpiresByType text/plain A86400 ExpiresByType application/x-shockwave-flash A2592000 ExpiresByType video/x-flv A2592000 ExpiresByType application/pdf A2592000 </IfModule>

我认为HTML不需要额外缓存,因此没加入


这还没完,由于有etag,我们的缓存设置目的就会泡汤,因此还要加入一句


FileETag none



查看完整版本: 优化网站网页速度,让Wordpress快起来

From 中国独立博客联盟 on 2010-04-28 22:48:09

您好,您的博客已被中国独立博客联盟www.duliblog.com收录并被推荐到首页,可以的话请您加上本站的链接,谢谢!QQ:499063836

From 雨宫优子 on 2010-05-01 23:49:15

好吧...已经增加.. 5.31编辑: 嘛。。。。已经删掉我连接了呢。。。契约自动解除哦O(∩_∩)O~

From Ludou on 2010-05-31 22:40:15

要想提高速度,还得选个好空间。 其他的优化,效果都不会特别明显。 .-= Ludou的最新文章:你的WordPress博客安全吗? =-.

From 雨宫优子 on 2010-05-31 23:51:52

是的呢,不过开启Gzip效果还是不错的哦。。 PS:呜~~今天不知道怎么了。。。往日速度不错的site5主机今天特别不稳定呢。。。 连FTP也是如此%>_<%

From Zmsky on 2010-06-08 12:20:54

话说这个代码高亮的插件叫啥~

From 雨宫优子 on 2010-06-08 16:53:48

嘛。。。直接从秀代码弄的呢

From 天天记事 on 2010-06-13 08:37:53

开始时用过cos html cache,发现当你有时删除文章后,该文章的缓存并不会删除,后台选择删除全部链接也不行,只能ftp,像我这样的懒人就放弃了……

From 雨宫优子 on 2010-06-13 08:50:46

只发现中文URL的缓存会有这个情况呢...

From 未日 on 2010-06-17 16:36:29

踩踩。推到罗莉。

From 老王 on 2011-02-06 09:48:00

这个可以用,我试了试CSS,JS压缩,很好。

From 于泽鹏 on 2011-08-19 00:21:27

速度的确挺快的!

From sailor on 2011-08-19 12:41:07

谢谢博主的热心帮助啊,看文留名了

Tags: WordPress, wordpress教程, 优化网站, 优化速度, 插件


©漩涡网络安全实验室