WordPress网站运行加速方案

  Wordpress          1,765 阅读          2017-12-17

曾经一度苦于WordPress运行速度,实在忍不下去的时候曾把博客转成Typecho,Typecho是一个很优秀的博客程序,总体程序文件大概只有0.5MB,相对wordpress,可以说是运行如飞,但是typecho功能相对单一,可扩展性很小,所以我又回来了。我想肯定有很多的朋友,和我一样,希望自己的网站运行如飞,不要自己宝贵的时间在等待上,那么今天我们主要谈一谈,网站服务器的优化以及程序的优化。本优化主要适用于阿里云ECS以及宝塔面板,其他的服务器以及主机的朋友原理同样适用,具体方法可能需要你们自己细细研究。

一、选择合适的主机面板

阿里云的ECS管理起来对于我这种人来讲,相对比较麻烦,为了方便管理,我只能选择合适的主机面板,市面上,可用的主机面板比较多,我所接触过的主机面板有:WDCP、AMH、宝塔等,三个面板相对来讲,功能都能满足我的基本需求。之所以选择宝塔,主要是因为:更新较快,相对于WDCP漏洞少,相对AMH它是免费开源的。安装好宝塔软件以后,我在上面使用了如下软件:

二、使用七牛来加速静态化文件

在上一篇文章中我们已经介绍过了:

开启七牛CDN Https

开启七牛CDN Https

前面一段时间写过一篇文章全站开启Https,当时由于https原因,弃用了七牛,最近发现七牛也支持https了,遂打算重…

三、开启memcached

Memcached是高性能的分布式内存缓存服务器。一般的使用目的是通过缓存数据库查询结果,减少数据库的访问次数,以提高动态Web 应用的速度、提高扩展性。

  1. 在第一部分我们已经开启了Memcached
  2. 然后在PHP中安装扩展memcached
  3. object-cache.php文件上传到wordpress的wp-content文件夹
  4. 在wordpress中修改wp-config.php,添加如下代码:
define('WP_CACHE', true);

这个时候我们可以看到Wordpress数据查询次数从70多降到10条左右,这个时候速度提升还是比较明显的

四、PHP的opcache

Opcache是一种通过将解析的PHP脚本预编译的字节码存放在共享内存中来避免每次加载和解析PHP脚本的开销,解析器可以直接从共享内存读取已经缓存的字节码,从而大大提高PHP的执行效率.

开启方法如下:只要在PHP中安装opcache扩展,然后重启一下apache就好了

安装以后可以看到wordpress的加载时间从大概0.16左右降到0.05左右,效果相对而言还是比较明显的

[wpso_shortcode_title title=”h3″ align=”uk-text-left” effect=”uk-animation-slide-bottom”]五、安装batcache[/wpso_shortcode_title]

WordPress启用Memcached这样的内存缓存之后,每次访问WordPress页面都要从内存中获取多个缓存对象。而Batcache主要就是解决这个问题,它是基于Memcached的WordPress缓存插件,它的工作原理是:把当前整个页面作为一个对象缓存到内存中,这样再次访问WordPress页面的时候,直接获从内存中获取这个对象即可,速度极快。开启方法如下:

  1. advanced-cache.php文件上传wp-content文件夹
  2. 然后在你wp-config.php中插入如下代码:
define('ENABLE_CACHE', true);

启用之后可以看到wordpress的加载时间从大概0.05降到0.04左右,效果没有前面两个明显,但是还是有效果的。

如果你的站点流量较大的话,建议您将站点完全静态化,将wordpress的数据库查询次数降到0,纯静态化加载,但是纯静态化以后可能会有很多问题,比如:

  • 增加了一个插件
  • 搜索不能使用
  • 评论不能提交
  • 访问量统计不能准确计算
  • 站点更新以后不能立即查看效果
  • 站点主题以及插件文件修改以后不能随时看到效果

由于我的站点每天只有几个人在看,所以完全没有必要纯静态化,这里呢我们就不做过多的探究。

虽然实现了很快的速度,但是,主题以及插件还有很大的优化空间,等我修改结束以后给大家慢慢道来。

支付宝二维码
微信二维码

扫码打赏,您说多少就多少!

感谢您的打赏,我们会更加努力的更新站点!

发表评论

    • 刘晨晨

      刘晨晨 9个月前 (12-19)

      我的一直是阿里云的ecs,也是一核一g,明天有空看看你的文章试试

    • 刘晨晨

      刘晨晨 9个月前 (12-19)

      正苦恼这个问题,之前没有升级PHP,主题的时候,用的也是这个主题,服务器同时挂了五个站点,速度也就1s左右,后面PHP升级7,主题更新后,就发现wp没以前快了,但又不想换回去,就只有开cdn试试,

      • 刘 荣焕

        刘 荣焕 9个月前 (12-19)

        @刘晨晨 我现在的主机1核1G,三个站点,php7.1,你按照我文章里面的方法试试,原理都是一样的

    • 刘晨晨

      刘晨晨 9个月前 (12-19)

      有时候可以优化一下,对嘞,帮忙检测一下我这会儿网站打开速度快吗,刚才配置的CDn缓存不知道生效没

      • 刘 荣焕

        刘 荣焕 9个月前 (12-19)

        @刘晨晨 你的打开大概2S左右,相对来讲算是比较慢了,国外的主题在国内加载的东西太多,还有你这边我看很多插件

    • 刘晨晨

      刘晨晨 9个月前 (12-19)

      你网站好像有问题,我刚才提交的评论,手机看显示三天前

    • 刘晨晨

      刘晨晨 9个月前 (12-19)

      安全性确实有待加强,爱折腾还是编译安装的好

    • 刘晨晨

      刘晨晨 9个月前 (12-19)

      用过宝塔,安装后使用wordpress4.9会出现一个未知的错误,4.8都没有,然后就抛弃了

      • 刘 荣焕

        刘 荣焕 9个月前 (12-19)

        @刘晨晨 这个面板我用了好久了,感觉还好吧,只是安全性还没有那么强大