目录
传送门
【单节点】LNMP+WordPress搭建个人网站(超详细)
【分布式】部署MySQL主从数据库--LNMP构建(超详细)
【分布式】部署Nginx服务及介绍--LNMP构建(超详细)
【分布式】部署PHP语言环境及介绍--LNMP构建(超详细)
WordPress
WordPress是一款基于PHP和MySQL的免费开源内容管理系统(CMS),起初仅作为一个个人博客系统,但WordPress是一款基于PHP和MySQL的免费开源内容管理系统(CMS),起初仅作为一个个人博客系统,但随着时间的推移逐渐发展成一个多功能的网站构建工具。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客,且安装过程简单易用。
WordPress的优势在于其丰富的主题和插件资源,用户可以根据需要定制网站的外观和功能,无需具备编程技术。据统计,截至2021年4月,WordPress在全球所有网站中的市场份额已达到41%,在所有使用的CMS建站程序中占据首位。
WordPress不仅适用于个人博客,还可以创建各种类型的网站,包括但不限于企业网站、新闻网站、电子商务网站等。此外,WordPress还支持多用户博客系统,允许多个用户共同管理和编辑网站内容。
分布式WordPress架构
分布式WordPress架构涉及将LNMP(Linux、Nginx、MySQL、PHP)环境与WordPress应用程序结合,通过分布式部署的方式在多个节点上运行。具体步骤如下:
- 在每个节点上部署Nginx服务器,并将WordPress安装包解压到Nginx的默认虚拟主机目录中。
- 配置Nginx反向代理,将请求分发到不同的后端节点。
- 使用负载均衡器,如HAProxy或Nginx,将流量分发到不同的后端节点。
- 使用MySQL主从复制,将数据复制到多个MySQL节点。
- 使用Redis或Memcached缓存数据,以加速读取速度。
这里就不多介绍,WordPress以及LNMP了,单节点部署(上面传送门直达)那篇文章已经讲的很清楚了
前面几篇文章分别完成了主从数据库MySQL的安装配置、Nginx服务的安装、PHP环境的安装,(使用上面的传送门直达查看LNMP的分布式构建)这篇主要进行分布式LNMP环境的调试及WordPrees应用部署,话不多说直接开始!
Linux操作系统规划准备
分布式LNMP环境调试
(1)配置Nginx服务支持PHP环境
使用连接工具连接到nginx节点虚拟机
修改配置文件
[root@nginx ~]# vi /usr/local/nginx/conf/nginx.conf
location / {
root /www; #更改网页目录
index index.php index.html index.htm; #添加index.php
}
location ~ \.php$ { #去掉location{}前面的注释符#
root /www; #更改目录为/www
fastcgi_pass 192.168.100.60:9000; #注意:这里修改的是PHP主机IP地址
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
修改完成后,保存退出
接着在/usr/local/nginx/conf/fastcgi_params文件中添加配置
[root@nginx ~]# vi /usr/local/nginx/conf/fastcgi_params
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #只需添加该行代码
这行代码的意思是在FastCGI配置中设置一个参数,名为`SCRIPT_FILENAME`,其值为`$document_root$fastcgi_script_name`。这个参数用于指定FastCGI脚本的完整路径。
(2)创建目录
在nginx和php节点创建/www目录,并修改用户和用户组
nginx节点
[root@nginx ~]# mkdir /www
把目录的权限赋予给nginx用户和组
[root@nginx ~]# chown nginx:nginx /www
php节点
[root@php ~]# mkdir /www
[root@php ~]# chown nginx:nginx /www
(3)部署WordPress
将wordpress-4.7.3-zh_CN.zip压缩包上传至nginx节点和php节点
WordPress 4.7.3下载地址:WordPress压缩包下载
nginx节点
压缩包上传到/root目录
[root@nginx ~]# ls
anaconda-ks.cfg wordpress-4.7.3-zh_CN.zip
解压压缩包(没有unzip命令,则使用YUM安装unzip
)
[root@nginx ~]# unzip wordpress-4.7.3-zh_CN.zip
[root@nginx ~]# ls
anaconda-ks.cfg wordpress wordpress-4.7.3-zh_CN.zip
将解压后的文件复制到/www目录
[root@nginx ~]# mv wordpress/* /www/
php节点
压缩包上传到/root目录,并解压
[root@php ~]# unzip wordpress-4.7.3-zh_CN.zip
[root@php ~]# ls
anaconda-ks.cfg wordpress wordpress-4.7.3-zh_CN.zip
将解压后的文件复制到/www目录
[root@php ~]# mv wordpress/* /www/
在nginx节点中修改WordPress应用的配置文件
WordPress应用提供了wp-config-sample.php模板文件
将模板文件复制为wp-config.php并修改
[root@nginx ~]# cp /www/wp-config-sample.php /www/wp-config.php
[root@nginx ~]# vi /www/wp-config.php
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');
/** MySQL数据库用户名 */
define('DB_USER', 'root');
/** MySQL数据库密码 */
define('DB_PASSWORD', '000000');
/** MySQL主机 */
define('DB_HOST', '192.168.100.30');
/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');
/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');
注意:/** MySQL主机 */下面一行配置的是主数据库mysql1的IP地址
按照上述文件修改配置文件,保存并退出
php节点我就不单独去配置了,使用scp命令直接将配置文件传送至php节点的/www目录下
[root@nginx ~]# scp /www/wp-config.php [email protected]:/www/
The authenticity of host '192.168.100.60 (192.168.100.60)' can't be established.
ECDSA key fingerprint is SHA256:U5fdTtPcdJz3bKc02LYP7B/UV5CqUl8MfEwt3Ear6MY.
ECDSA key fingerprint is MD5:a4:de:1d:5e:ca:cf:29:5a:46:a9:8b:ca:04:80:f6:9a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.100.60' (ECDSA) to the list of known hosts.
[email protected]'s password:
wp-config.php
100% 2910 4.1MB/s 00:00
php节点查看验证一下,可以看到/www目录下面有了这个文件
[root@php ~]# ls /www | grep wp-conf
wp-config.php
(4)创建WordPress数据库
在mysql1节点登录数据库,使用命令创建WordPress数据库
[root@mysql1 ~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 6
Server version: 5.5.68-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database wordpress;
Query OK, 1 row affected (0.02 sec)
MariaDB [(none)]> exit
Bye
(5)验证WordPress应用
在nginx节点重启nginx服务
[root@nginx ~]# nginx -s reload
最激动人心的时刻终于来了!!!现在我们在浏览器输入nginx服务器的IP地址进行访问,会出现著名的WordPress五分钟安装程序!填写必要信息后,然后单击左下角“安装WordPress”按钮,进行WordPress应用的安装
安装完成后正常应该是会自动跳转至WordPress后台界面,没有跳转的话点一下刷新就好了
单击页面左上角的“mywebsite”图标,进入WordPress首页
至此,分布式部署LNMP+WordPress 应用内容管理系统就搭建成功啦!!!接下来你可以自定义你的博客网站!