WordPress安装并开启Memcached缓存扩展加快网站速度

加快WordPress的速度 就是减少动态页面查询次数 以及服务器低资源占用率 那么你就需要用Memcache(d)或redis这样的服务器扩展来加速你的WordPress 因Memcache(d)和redis是基于服务器的扩展 完全不同于PHP中的扩展 它可以大大提升网站运行效率 减少动态查询它的原理是 把动态数据缓存到内存中 从而实现高速读取的目的

大体上分两种安装方法 一个是服务器直接安装 一个是宝塔面板安装 我都会写在下面

关于Memcache(d)与redis 建议选择Memcache(d) 网上可以查到区别 个人认为Memcache(d)更适合WordPress 况且支持它的插件很多

Memcache(d) 有两个版本 一个是Memcache 一个是Memcached 没错就是多了个“d” 它是新版 支持的东西更多 效率更高所以要选择它

注意!! 在使用虚拟主机的 不用往下看了 前面说了 它是服务器扩展 虚拟主机装不了的

Memcached安装

一、军哥Lnmp

进入lnmp解压后的目录,执行:

./addons.sh install memcached

可以根据自己的需求选择php-memcache或php-memcached扩展,本文建议使用Memcached扩展 输入2回车

安装完成后 就可以启用了

二、直接库源安装方法

1、安装Memcache服务端

Debian/Ubuntu 输入以下指令

# apt-get -y install memcached

CentOS/RedHat/Other 输入以下指令

yum install libevent libevent-devel memcached

2、安装Memcached的PHP扩展(客户端)

安装libmemcached库

cd /usr/local/src
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
tar zxvf libmemcached-1.0.18.tar.gz
cd libmemcached-1.0.18
./configure --prefix=/usr/local/libmemcached
make && make install

安装php-fpm的memcached扩展

cd /usr/local/src
wget http://pecl.php.net/get/memcached-2.2.0.tgz
tar zxvf memcached-2.2.0.tgz
cd memcached-2.2.0

使用安装php时生成的 phpize 来生成 configure 配置文件

/usr/local/php/bin/phpize \
--with-php-config=/usr/local/php/bin/php-config
./configure --with-php-config=/usr/local/php/bin/php-config \
--with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl
make && make install

--with-php-config 指定 php-config,该文件与 phpize 所在目录相同, 

--with-libmemcached-dir 指定 libmemcached 安装目录,就刚才我们 --prefix 那个目录 ,

--disable-memcached-sasl 说明我们系统不支持sasl.h

如果安装成功,提示:Installing shared extension:/usr/local/php/lib/extensions/no-debug-non-zts-20160524/ 等类信息

然后编辑php.ini把扩展加入到配置文件

在 php.ini 中添加以下内容:

extension=memcached.so

然后重启Nginx以及PHP即可

三、纯手动安装方法

如果你上述方法都不适合你 你可以试试纯手动

1、安装Memcache服务端

安装libevent库

cd /usr/local/src
wget https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz
tar zxvf libevent-2.0.22-stable.tar.gz
cd libevent-2.0.22-stable
./configure --prefix=/usr/local/libevent
make && make install

安装memcached服务端

cd /usr/local/src
wget http://www.memcached.org/files/memcached-1.4.33.tar.gz
tar zxvf memcached-1.4.33.tar.gz
cd memcached-1.4.33
./configure --prefix=/usr/local/memcached \
--with-libevent=/usr/loca/libevent
make && make install

设置开机自启动项

touch /etc/init.d/memcached
echo '#!/bin/sh -e' >> /etc/init.d/memcached
echo '/usr/local/bin/memcached -d -m 128 -p 11211 -u nobody -l localhost' >> /etc/init.d/memcached
chmod u+x /etc/init.d/memcached
echo '/etc/init.d/memcached' >> /etc/rc.local

启动memcached

/usr/bin/memcached -l 127.0.0.1 -p 11211 -m 150 -u root

查询进程是否有memcached

ps aux | grep memcached

启动成功!

2、安装Memcached的PHP扩展(客户端)

这里请跳到本文的 二,2

四、宝塔面板安装

相比直接安装方法 宝塔安装就方便多了 只需几下就OK

1、安装Memcache服务端

进入宝塔面板后台 软件管理-运行环境-Memcached-安装

2、安装Memcached的PHP扩展(客户端)

软件管理-运行环境-选择你的PHP-设置-安装扩展-Memcached-安装

为WordPress开启Memcached缓存

1、如果想要Memcached为你的Wordpress服务 那么还需要object-cache 与此同时配合 advanced-cache 效果会更好

object-cache.phpadvanced-cache.php上传到wp-content文件夹下

object-cache.php 为对象缓存高级插件 即与Memcached连接 它还可以连接redis

advanced-cache.php 为高级缓存高级插件 //注:它是个通用缓存插件 原为batcache缓存插件 为几乎所有WordPress都可以使用它 正因如此 你装过的任何缓存插件 都内置了这个

注!!如果服务器已有advanced-cache.php就不用覆盖了

插件下载链接:https://cdn.51shenyun.cn/Memcached缓存插件.zip

2、修改wp-config.php 开启对象缓存

编辑网站根目录下的 wp-config.php 文件

在文件任意位置行(建议在尾部,代码规范)输入一下两行并保存

define('ENABLE_CACHE', true); 
define('WP_CACHE', true);  //该条如若已存在 则不用写

至此 为WordPress安装并开启Memcached扩展 完成

后续

你还可以配合其他缓存插件 来更大化的利用 Memcached 譬如wp super cache、w3tc 等等

哇 这一下子写了这么多 真的很累啊 这一大篇文章 ;w; 有个伟大的计划 接下来博客更新方向大多围绕在WordPress速度优化方面 因为我在一点点蓄力个大招 到最后写一个终极篇会利用到这些文章!

本文原创,转载请标明链接

评论 ( 2)
  1. avatar
    沙发
    Escher 2019-06-29 03:08

    这里我说一下,object-cache.php和Memcached混用的话,现WordPress会打不开,这是一个大坑。

    • avatar
      回复
      神丶韵 2019-06-29 15:21
      @Escher 这是修改版的object-cache.php 还有如果打不开 请检查你服务器环境 该object-cache.php仅支持php7.2以上 切服务器对象缓存环境只有Memcached