如果我们有在选择和使用WordPress程序的话,网站初期没有太多数据和用户访问量,且我们有选择的是国内主机速度上可能感觉不出来有多大问题。但是随着网站的数据增多和访客的增加,你会觉得WordPress网站速度会减慢,于是我们会需要各种查阅是否有可以提速WordPress的方法。比如我们可以使用WPOSS、WPCOS等插件进行图片静态分离到阿里云对象存储、腾讯云对象存储。
正常来说,如果我们启用静态分离后,WordPress速度会提高不少毕竟图片等大带宽占用的文件被分离出来。如果要彻底的解决加速问题,我们还可以对于网站核心程序所在的服务器进行优化,我们可以看到WordPress程序也有很多的缓存插件。比如WP Super Cache、W3 Total Cache、WP-Rocket、Comet Cache。这些插件固然也各有优点,要不有些缓存插件也不会是收费的。
对于很多普通个人网站和体量不大的,我们可以使用简单的免费插件。比如这款Cachify插件麦子有在前面介绍过。可以选择硬盘、数据库、Memcached 等方式进行缓存加速。这篇文章中,麦子记录如何给自己的网站部署Cachify+Memcached实现WordPress缓存加速的, Cachify 比较轻便的设置,相对其他的更容易让新人接受。
第一、服务器部署 Memcached
如果我们的服务器没有安装 Memcached 则需要安装。
服务器部署Memcached之后,我们才可以去后台安装插件。
插件地址:https://wordpress.org/plugins/cachify/
安装后我们需要配置。
看到设置是不是很简单?选择缓存方式为Memcached,然后其他的根据需要选择,也可以设置不缓存的页面。
第二、配置服务器Nginx缓存机制
我们单单设置插件是不够的,我们还需要重新配置Nginx或者Apache。这里我用的是Nginx,需要配置我们的Nginx配置文件。
gzip_static on;
location / {
error_page 404 405 = @nocache;
if ( $query_string ) {
return 405;
}
if ( $request_method = POST ) {
return 405;
}
if ( $request_uri ~ "/wp-" ) {
return 405;
}
if ( $http_cookie ~ (wp-postpass|wordpress_logged_in|comment_author)_ ) {
return 405;
}
default_type text/html;
add_header X-Powered-By Cachify;
set $memcached_key $host$uri;
memcached_pass 127.0.0.1:11211;
}
location @nocache {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
location ~* ^/wp-content/uploads/.*\.php$ {
deny all;
}
这里我直接替换掉当前站点的wordpress.conf文件。如果我们当前服务器有其他站点不用Cachify的时候,我们不能直接这么替换,而是直接在当前站点的conf中进行替换对应文件。或者单独重命名一个conf配置文件。
配置完毕后,我们重启Nginx生效,看看速度是不是有提高。