wordpress用户体验网页加速第一:硬件和网路
这个是你所使用的wordpress网站空间的空间商所决定的,主要存在的问题有:
1、电信和网通互通的问题,我的主博客站 http://p.wangjueju.cn 就是这样。原来是托管在移动的机房,后来我通过ISP统计发现大部分访客都来自电信ADSL,超过60%,我就还是换到电信机房了。虽然我的部分用户是学生用户,但是我发现从教育网来的访问不多,而原本用移动机房的空间,是因为空间商说移动的对教育网速度快。既然教育网用户不多,也就还是以电信的为主好了。至于要不要买双线的空间,我觉得还是不那么必要了。
2、一个主机上网站的数目问题,这个比较复杂,看空间商的良心吧,也要看你自己的预算而定。还有就是空间的限制问题,比如什么下载,bt站,还有大型图片站,bbs(不过我觉得很多BBS访客都很少,不足为虑),如果和这样这些搞到一起,还有那些什么承诺无空间和带宽限制,就绕道走好了。
3、操作系统,一般来讲wordpress用Linux主机比较好,web服务器用apache,再加PHP5和MYSQL。当然,主机上都会有各种限制,windows服务器和IIS的一般都有并发线程控制,而linux的呢就往往控制php使用的内存和运行时间限制。这些可以通过php info的探针看到。对于限制太多的主机商,就弃而远之好了。对于毫无限制的主机,也要弃而远之,因为没有限制,你的资源可能被同机的其他网站给耗尽。
4、用户的网络,这个做站的是没法管的了,就算了。
网页加速第二:程序优化
基本工具:firefox+firebug+Yslow
这个是用来检测网页加载效率的,yahoo作为全球最牛B门户网站,他们的工程师在网页加载效率方面还是下了功夫的,开发的Yslow也很好用。
wordpress插件:我试过很多wordpress的插件,主要是优化什么css,javascript,因为我发现这两个的加载重量最大,占的时间也最多。
那么我推荐大家最好的,可以综合处理各种优化任务的是PHP-speedy-WP . 至于安装和配置,跟随插件自带的readme和管理界面指示即可。作者正在开发一些新功能,我想还是很值得期待的。对于不能用php speed的朋友,推荐3个独立的插件,wp-js, wp-css,和wp-minify ;这四个插件,要么装speedy一个,要么分开装另外几个。我都是根据YSLOW的提示来优化的。JAVASCRIPT整合到一个文件,CSS combination。现在还在等待另外一个可以combine背景图片的插件,但是因为和我用的wpmu不太兼容,就暂时不用了。何况wp又要升2.9,我也不急着加新的插件了。
另外一个一定要用的插件是use-google-libraries ,主要就是把原本从本地服务器调用的一些js lib通过google提供的开放API调用。我觉得这样子至少在JS方面你是用到了google遍布全球的CDN加速了,很好的一个工具。Google说他们要让信息获取更方便,这也是一个很不错的贡献。
其次就不关插件的事情了,是Gzip的输出,Gzip的输出通过在.htacess 件里面插入一段代码就可以,具体看我原来贴的一篇文章
http://wowpediatech.p.wangjueju.cn/2009/11/11/guan-yu-wodpress-you-hua-optimization-de-gzip-shu-chu/
另外好像php speedy也可以实现GZIP的压缩输出。
GZIP的压缩输出是php服务器端的一个很强大的功能,可以减少传输所需的网络带宽,这样你的用户在加载你的网页时候就不要等太久了。一般等待超过3秒钟估计就跑了吧。我是这样的。
用linux的主机的很多都有gzip输出,如果你不知道主机上是否有这个功能,试着通过phpMyAdmin备份你的数据库,导出文件那一个选项处若选择gzip压缩能够导出后缀为.gz的文件,你的服务器就支持gzip功能了。
最后,就是内容方面的,比如主页或者模板里面少一些大图片,少一些外部的而且加载速度奇慢的js和图片,还有插件,都很重要。在饭否关闭那几天,我的wordpress就因为安装了一个饭否同步插件但是又不断的去访问饭而耗尽主机内存,直到空间商把我的站关闭。所以,建议各位写插件去抓取外部的js或者Curl的时候,都设置一个执行时间和次数的上限,别无止境的消耗主机资源。至于使用插件也要小心,对于引用一些被墙的内容的插件,比如twitter,facebook,youtube,都会由于外部网站内容无法加载而导致网页加载速度延迟。
好了,网页加速,我觉得做到这些就差不多了。我的主站现在YSLOW打分是70多分,评级是C级。反正CDN我是不会用的了,估计要提高还得等speedy的作者发力了。