01 前言
上期介绍了LNMP的安装与相关配置,现在我们来尝试搭建自己的第一个Blog站点。我们选用wordpress这个开源软件来搭站。WordPress是一款个人博客系统与内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,非常适合在LNMP环境下使用。
本文转自我个人的公众号:天目星 ,请大家多多关注。链接:前往天目星
一、下载wordpress5.0
wordpress发布了新的版本5.0,本着吃螃蟹的心理,先尝为敬。磨磨新版的皮,踩踩新坑。
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
二、安装
解压:tar xvf latest-zh_CN.tar.gz
在服务器中新增一个文件作为web_root目录
mkdir /www
mv wordpress /www/myblog
chown www-fpm.www-fpm /www
三、配置nginx.conf
vim /usr/local/nginx/conf/nginx.conf
location / {
root /www;
index index.php index.html index.htm;
}
location ~ \.php$ {
root /www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
四、登录网站
http://<Your IP Address>/myblog
填写mysql的连接信息
如mysql配置正确则如下显示,请点击“现在安装”。
设置Blog的相关信息
完成安装
五、为wordpress启用缓存
因为wordpress都是动态页面,我们使用memcached来为其提供缓存解决方案。
(小提示:php 有 memcached 和 memcache 两个类似组件,很多人会混淆这两个组件,导致编译错误的问题。memcache是pecl 扩展库版本,原生支持 php,2004年发布。而memcached是libmemcached版本,独立安装服务,性能更好、接口更多,发布于2009年。两者具体的区别不在本文范畴内,大家可以查询相关资料。)
1、部署memcached
因为使用的是centos7,我们可以直接使用yum安装
yum -y install memcached
systemctl start memcached.service
systemctl enable memcached.service
2、安装php-memcached 拓展
需要安装支持库:yum -y install cyrus-sasl-devel libmemcached
我们使用的php是7.2.0,所以需要php7专用的分支版本
wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip
解压:unzip php7.zip
编译:
cd php-memcached-php7
/usr/local/php/bin/phpize
以上命令运行完毕将在php-memcached-php7目录生成configure文件。
安装:
./configure --with-php-config=/usr/local/php/bin/php-memcached.config
make
make install
修改php配置文,添加如下配置
vim /etc/php.ini
extension=memcached.so
查询是否安装memcached插件
/usr/local/php/bin/php -m | grep memcached
3、应用缓存到wordpress中
我们要下载相关插件到wordpress,git中有次项目。
下载
git clone https://github.com/tollmanz/wordpress-pecl-memcached-object-cache.git
解压后把文件bject-cache.php上传到 wp-content 目录即可开启memcached 缓存功能。
4、测试
memcache官方有一个监控探针,可以观察缓存的命中率。
下载:http://pecl.php.net/get/memcache-3.0.5.tgz
解压并修改memcache.php的配置指向memcached服务
define('ADMIN_USERNAME','memcache'); // Admin Username
define('ADMIN_PASSWORD','123456'); // Admin Password
define('DATE_FORMAT','Y/m/d H:i:s');
define('GRAPH_SIZE',200);
define('MAX_ITEM_DUMP',50);
$MEMCACHE_SERVERS[] = '127.0.0.1:11211'; // add more as an array
//$MEMCACHE_SERVERS[] = '127.0.0.1:11211'; // add more as an array
然后把此文件上传到web_root目录中,并访问它
http://<Your IP Address>/memcache.php
输入你设置的账号密码即可查看memcached的状态:
修改wordpress的wp-config.php 加入如下参数使缓存生效。
global $memcached_servers;
$memcached_servers = array(
array(
'127.0.0.1'11211, // Memcached server IP address and port
)
);
至此,大家可以使用测试工具(如ab)测试增加缓存后的站点的每秒请求数是多少吧。
LNMP系列: