linux系统搭建wordpress和知乎

1.安装LNMP基础服务

# 1.更换nginx源
vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

# 2.安装nginx
[root@web01 nginx_php]# yum install -y nginx

# 3.更换php源
[root@web01 ~]# vim /etc/yum.repos.d/php.repo

[php-webtatic]
name = PHP Repository
baseurl = http://us-east.repo.webtatic.com/yum/el7/x86_64/
gpgcheck = 0

# 4.安装php
[root@web01 ~]# yum -y install php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-pecl-mongodb

 # 5.安装MySQL
 [root@web01 ~]# yum install -y mariadb-server

2.统一nginx和php的用户

# 1.创建用户和用户组
[root@web01 ~]# groupadd www -g 666
[root@web01 ~]# useradd www -u 666 -g 666 -s /sbin/nologin -M

# 2.修改nginx的配置文件
[root@web01 ~]# vim /etc/nginx/nginx.conf 
user  www;

# 3.修改php的配置文件
 [root@web01 ~]# vim /etc/php-fpm.d/www.conf 
[www]
user = www
group = www

3.启动所有服务并加入开机自启

# 1.启动服务
[root@web01 ~]# systemctl start nginx php-fpm mariadb
 
# 2.加入开机自启
[root@web01 ~]# systemctl enable nginx php-fpm mariadb

# 3.检查端口和进程
[root@web01 ~]# netstat -lntup|grep -E '80|9000|3306'
[root@web01 ~]# ps -ef|grep -E 'nginx|mysql|php'

4.nginx和php建立连接

# 1.修改nginx配置文件
[root@web01 conf.d]# vim /etc/nginx/conf.d/blog.zls.com.conf
server {
        listen 80;
        server_name blog.zls.com;
        root /website/wordpress;
        index index.php index.html;

        location ~ .php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIP_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
        }
}

# 2.创建站点目录
[root@web01 conf.d]# mkdir /website/wordpress -p

# 3.检测nginx和PHP建立连接(这一步可做可不做)
[root@web01 wordpress]# vim /website/wordpress/info.php

<?php
        phpinfo();
?>

# 4.打开浏览器访问:http://blog.zls.com/info.php

5.数据库操作

# 1.给数据库的root用户设置一个初始密码(可做可不做)
[root@web01 wordpress]# mysqladmin -uroot password '123'

# 2.创建数据库
MariaDB [(none)]> create database wordpress_db;

# 3.查看数据库是否创建成功(可看可不看)
MariaDB [(none)]> show databases;

# 4.创建用户
MariaDB [(none)]> grant all on wordpress_db.* to wordpress_user@'localhost' identified by '123456';

# 5.查看用户是否创建成功(可看可不看)
MariaDB [(none)]> select user,host from mysql.user;

6.检查php和MySQL是否可以建立连接

# 1.在站点目录下创建一个php连接数据库的代码(可做可不做)
[root@web01 ~]# vim /website/wordpress/mysql.php
<?php
    $servername = "localhost";
    $username = "wordpress_user";
    $password = "123456";

    // 创建连接
    $conn = mysqli_connect($servername, $username, $password);

    // 检测连接
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }
    echo "小哥哥,php可以连接MySQL...";
?>

<img style='100%;height:100%;' src=https://blog.driverzeng.com/zenglaoshi/php_mysql.png>

7.部署WordPress代码

WordPress官网:TP

# 1.下载WordPress
[root@web01 wordpress]# wget https://wordpress.org/latest.tar.gz

# 2.解压WordPress
[root@web01 wordpress]# tar xf wordpress-5.0.3-zh_CN.tar.gz 

# 3.保证代码就在/website/wordpress目录下,不要多任何层级的目录
[root@web01 wordpress]# mv wordpress/* ./

8.在web上配置WordPress

# 修改站点目录的权限,否则没有办法创建连接数据库的php代码文件
[root@web01 wordpress]# chown -R www.www /website/wordpress/

部署第二个项目-知乎(WeCenter)

1.写nginx的配置文件,创建知乎站点

# 1.编辑配置文件
[root@web02 ~]# vim /etc/nginx/conf.d/zh.zls.com.conf
server {
        listen 80;
        server_name zh.zls.com;
        root /website/zh;
        index index.php index.html;

        location ~ .php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
        }
}
# 1.1 重新加载nginx
[root@web02 zh]# systemctl reload nginx

# 2.创建站点目录
[root@web02 ~]# mkdir /website/zh
 
 # 3.将代码下载到站点目录
 [root@web02 zh]# wget http://test.driverzeng.com/Nginx_Code/WeCenter_3-2-1.zip

 # 4.解压代码
 [root@web02 zh]# unzip WeCenter_3-2-1.zip 
 
 # 5.将代码放在站点目录下
 [root@web02 zh]# mv WeCenter_3-2-1/* ./
 
 # 6.授权
 [root@web02 zh]# chown -R www.www /website/zh/

2.数据库操作

# 1.创建知乎的库
MariaDB [(none)]> create database zh;

# 2.创建知乎的用户
MariaDB [(none)]> grant all on zh.* to zh_user@'localhost' identified by '123';

目前来说,两个博客和两个知乎都搭建出来了,但是...数据不统一,因为用的两台不同的数据库

准备环境

主机名 wanIP lanIP 搭建服务
db01 10.0.0.51 172.16.1.51 MySQL
web01 10.0.0.7 172.16.1.7 网站
web02 10.0.0.8 172.16.1.8 nginx和php

1.在db01上安装数据库

# 1.安装数据库
[root@db01 ~]# yum install -y mariadb-server

# 2.启动并添加开机自启
[root@db01 ~]# systemctl start mariadb
[root@db01 ~]# systemctl enable mariadb

# 3.给root,密码
 [root@db01 ~]# mysqladmin -uroot password '123'
 
# 4.连接数据库
 [root@db01 ~]# mysql -uroot -p123

# 6.创建wordpress的用户和知乎用户
MariaDB [(none)]> grant all on *.* to php_user@'%' identified by '111';

# 7.导出web02的数据
[root@web02 ~]# mysqldump -uroot -p123 -B wordpress_db > /tmp/wordpress.sql
 
# 8.发送给新的数据库
[root@web02 ~]# scp /tmp/wordpress.sql root@10.0.0.51:/tmp/

# 9.导入数据(二选一)
[root@db01 ~]# cat /tmp/wordpress.sql | mysql -uroot -p123
[root@db01 ~]# mysql -uroot -p123 < /tmp/wordpress.sql 

2.修改php连接数据库的代码

[root@web01 wordpress]# vim /website/wordpress/wp-config.php
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress_db');

/** MySQL数据库用户名 */
define('DB_USER', 'php_user');

/** MySQL数据库密码 */
define('DB_PASSWORD', '111');

/** MySQL主机 */
define('DB_HOST', '10.0.0.51');

3.共享存储,存放图片

# 1.安装nfs
[root@nfs ~]# yum install -y nfs-utils

# 2.修改nfs的配置文件
[root@nfs ~]# vim /etc/exports
/file_system 172.16.1.0/24(sync,rw,all_squash,anonuid=666,anongid=666)

# 3.创建用户
[root@nfs ~]# groupadd www -g 666
[root@nfs ~]# useradd www -u 666 -g 666 -s /sbin/nologin -M

# 4.创建共享存储目录
[root@nfs ~]# mkdir /file_system
 
# 5.授权(忽略)
[root@nfs ~]# chown -R www.www /file_system/

# 6.启动nfs并加入开机自启
[root@nfs ~]# systemctl start nfs-server
[root@nfs ~]# systemctl enable nfs-server

# 7.拷贝数据到nfs中
[root@web02 uploads]# scp -r /website/wordpress/wp-content/uploads/2020 root@172.16.1.31:/file_system

# 8.挂载
[root@web02 ~]# mount -t nfs 172.16.1.31:/file_system /website/wordpress/wp-content/uploads/
 
# 9.授权共享存储目录
[root@nfs file_system]# chown -R www.www /file_system/
原文地址:https://www.cnblogs.com/zabcd/p/13366731.html