我是如何对WordPress进行优化提高加载和访问速度的

在很多人的印象里面Wordpress就是臃肿、慢、占资源,作为一个很多年的Wordpress用户,从其他Blogger那边学到了不少对Wordpres运行加载速度进行提速的方法,自己也经常会付之于实践,以下就是我对自己的Wordpres站点进行优化的几个实践内容,逐一记录下来。

一、关闭和禁用一些不必要的Wordpress插件

注意重点,是不必要的插件就不用,该用的、不得不用的时候还是要用,这里就不多做阐述了。安装和使用Wordpress插件的原则上是选择合适自己网站的,不一味追求少,也不要贪多,只要合适网站功能需求的插件。

二、对Wordpress进行动静态资源分离

目前我是通过七牛服务对本站的动静态资源进行分离的:

是通过七牛服务对本站的动静态资源进行分离

首先在七牛注册一个账户,然后新建一个对象存储空间,然后再镜像存储里面把自己的网站设定为镜像源。七牛官网

接下来在 WordPress 主题目录下的 functions.php 文件中,加入以下代码实现替换功能:

if ( !is_admin() ) {
	add_action('wp_loaded','3kjs_ob_start');
	
	function c7sky_ob_start() {
		ob_start('3kjs_qiniu_cdn_replace');
	}
	
	function 3kjs_qiniu_cdn_replace($html){
	$local_host = 'https://www.3kjs.com'; //博客域名
	$qiniu_host = 'https://cdn3kjs.qiniu.com'; //七牛域名
	$cdn_exts   = 'js|css|png|jpg|jpeg|ico'; //扩展名(使用|分隔)
	$cdn_dirs   = 'wp-content|wp-includes'; //目录(使用|分隔)
	
	$cdn_dirs   = str_replace('-', '\-', $cdn_dirs);

	if ($cdn_dirs) {
		$regex	=  '/' . str_replace('/', '\/', $local_host) . '\/((' . $cdn_dirs . ')\/[^\s\?\\\'\"\;\>\<]{1,}.(' . $cdn_exts . '))([\"\\\'\s\?]{1})/';
		$html =  preg_replace($regex, $qiniu_host . '/$1$4', $html);
	} else {
		$regex	= '/' . str_replace('/', '\/', $local_host) . '\/([^\s\?\\\'\"\;\>\<]{1,}.(' . $cdn_exts . '))([\"\\\'\s\?]{1})/';
		$html =  preg_replace($regex, $qiniu_host . '/$1$3', $html);
	}
	return $html;
}
}

目前找到的上面这段代码是相对比较完美的,这样就能实现无插件实现七牛CDN加速。

PS:我为什么没有用我爱水煮鱼的七牛云存储插件,两个原因:

1、现在的这个插件需要启用WPJAM-Basic,否则将无法启用和运行,WPJAM-Basic和我目前用的这个TinT主题有一部分函数的冲突,兼容性不好(可能很多主题会和WPJAM-Basic插件有冲突);

2、基于尽量减少使用Wordpress插件的原则

三、启用Memcache的缓存

VPS安装Memcache,宝塔面板里面直接在软件管理里面安装就行,目前我使用的Tint主题选项里面有相关Memcache对象缓存设置选项,将安装的Memcache相关参数填写进去就行,如果主题没有填写这些参数的设置选项,同样也可以通过插件来实现,比如:FlexiCache。

四、服务器层面的优化

1、尽量使用PHP7环境,PHP7最显著的变化就是性能的极大提升,已接近Facebook开发的PHP执行引擎HHVM。在WordPress基准性能测试中,速度比5.6版本要快2~3倍,大大减少了内存占用。

目前我的VPS使用的就是PHP7环境。

2、开启服务器的OPcache,PHP7启用Opcache非常简单, 在php.ini配置文件中加入如下内容:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1

然后重载PHP。

相关文章