• 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/
    
  • 相关阅读:
    HTTP响应状态码整理
    Python通用爬虫,聚焦爬虫概念理解
    HTTP无状态协议理解
    会话与事务知识点总结
    并发一致性知识点整理
    使用隔离级别read committed隐式解决并发冲突
    多并发笔记整理
    git基本使用
    Docker其他
    Docker Bind Mount 与 Volume
  • 原文地址:https://www.cnblogs.com/zabcd/p/13366731.html
Copyright © 2020-2023  润新知