nginx-blog

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介: nginx-blog

搭建lnmp平台

1、安装Nginx(192.168.8.10):

使用Nginx官方提供的rpm包
vim  /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
执行yum安装
yum install nginx -y
systemctl start nginx
systemctl enable nginx

2、使用第三方扩展epel源安装PHP7:

第一种方法:

rpm -Uvh epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel \
    php72w-mysql php72w-intl php72w-mbstring
systemctl start php-fpm 

第二种方法:

yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
安装 php73 版本
yum -y install  php73-php-fpm  php73-php-cli  php73-php-bcmath  php73-php-gd \
 php73-php-json  php73-php-mbstring  php73-php-mcrypt  php73-php-mysqlnd  \ 
 php73-php-opcache  php73-php-pdo  php73-php-pecl-crypto  php73-php-pecl-mcrypt \
 php73-php-pecl-geoip  php73-php-recode  php73-php-snmp  php73-php-soap  php73-php-xmll
启动 php
systemctl restart php73-php-fpm
注:因为网速问题,直接复制php-rpm包本地安装
    cd php-rpm 
    yum -y localinstall *.rpm 
    systemctl start php-fpm 
    systemctl enable php-fpm 

3、安装mysql(mariadb):

rpm -ivh http://repo.mysql.com/yum/mysql-5.6-community/el/7/x86_64/mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server -y
systemctl start mysqld
systemctl enable mysqld
修改mysql密码:mysql_secure_installation 

4.应用1:搭建wordpress

(1)下载wordpress源码包

(2)复制wordpress安装包,到虚拟机/,解压并赋权

   unzip wordpress-4.9.4-zh_CN.zip

   chmod -R 777 /wordpress

 

(3)创建虚拟主机配置文件

   vim /etc/nginx/conf.d/blog.conf

   添加:

   server {

       listen 80;

       server_name blog.benet.com;

       root /wordpress;

       index index.php index.html;


       location ~ \.php$ {

               root /wordpress;

               fastcgi_pass 127.0.0.1:9000;

               fastcgi_index index.php;

               fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

               include fastcgi_params;

       }

   }

   保存退出

   systemctl reload nginx

(4)创建blog数据库和管理用户

   登录数据库:mysql -uroot -p123.com

   创建数据库:create database blog;

   设置管理用户及密码:grant all on blog.* to lisi@localhost identified by '123.com';

 

(5)客户端通过域名访问blog,安装并配置

  http://blog.benet.com

    登录后台

  http://blog.benet.com/wp-admin


5.应用2:搭建知乎wecenter


(1)下载wecenter源码包

(2)复制wecenter安装包,到虚拟机/zh目录下,赋权,并复制/zh目录到php服务器

   cd /zh

   unzip wecenter_3-3-4.zip

   chmod -R 777 /zh

 

(3)创建虚拟主机配置文件

   vim /etc/nginx/conf.d/zh.conf

   添加:

   server {

       listen 80;

       server_name zh.benet.com;

       root /zh;

       index index.php index.html;


       location ~ \.php$ {

               root /zh;

               fastcgi_pass 127.0.0.1:9000;

               fastcgi_index index.php;

               fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

               include fastcgi_params;

       }

   }

   保存退出

   systemctl reload nginx

(4)创建blog数据库和管理用户

   登录数据库:mysql -uroot -p123.com

   创建数据库:create database zh;

   设置管理用户及密码:grant all on zh.* to wangwu@localhost identified by '123.com';

 

(5)客户端通过域名访问zh,安装并配置

  http://zh.benet.com

     登录后台

  http://zh.benet.com/?/admin


===================================================================

nginx: 192.168.8.10

mysql: 192.168.8.20

php:   192.168.8.30



1.lnmp实现mysql数据库迁移(192.168.8.10)

   为了实现mysql独立运行,拆分lnmp

(1)另起一台centos7(192.168.8.20),安装mysql

   rpm -ivh http://repo.mysql.com/yum/mysql-5.6-community/el/7/x86_64/mysql-community-release-el7-5.noarch.rpm

   yum install mysql-community-server -y

   systemctl start mysqld

   systemctl enable mysqld

   修改mysql密码:mysql_secure_installation

(2)把原lnmp服务器(192.168.8.10)上的数据库文件导出,并复制到新的mysql(192.168.8.20)上

   mysqldump -uroot -p123.com  --all-databases > mysql-all.sql

   scp mysql-all.sql root@192.168.8.20:/root


(3)在新的mysql服务器(192.168.8.20)上导入数据库文件

   mysql -uroot -p123.com < /root/mysql-all.sql

   systemctl restart mysqld


(4)在新mysql服务器上创建同名管理用户和密码

   mysql -uroot -p123.com         #登录

   grant all on blog.* to lisi@'%' identified by '123.com';

   grant all on zh.* to wangwu@'%' identified by '123.com';

     

(5)在原服务器上修改blog、zh的配置文件,重新指定数据库服务器ip

   先查看blog的配置位置:

       cd /wordpress        #切换到blog网页根目录

       grep -R 123.com        #搜索保存密码的配置文件位置

       vim /wordpress/wp-config.php

       修改:

       define('DB_NAME', 'blog');            #WordPress数据库的名称

       define('DB_USER', 'lisi');            #MySQL数据库用户名

       define('DB_PASSWORD', '123.com');    #MySQL数据库密码

       define('DB_HOST', '192.168.8.20');    #新MySQL主机ip

       保存退出

 

   先查看zh的配置文件位置:

       cd /zh

       grep -R 123.com

       vim /zh/system/config/database.php

       修改:

       'host' => '192.168.8.20',            #新MySQL主机ip

       'username' => 'wangwu',                #MySQL数据库用户名

       'password' => '123.com',            #MySQL数据库密码

       'dbname' => 'zh',                    #zh数据库的名称

       保存退出


2.拆分php(192.168.8.30)

(1)启动一台centos7,安装php

   rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

   rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

   yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-pdo php72w-xml php72w-fpm php72w-mysqlnd php72w-opcache

 

(2)修改nginx服务器上的配置文件,重新指向新的php服务器(zh步骤相同)

vim /etc/nginx/conf.d/blog.conf

修改为:

server {

       listen 80;

       server_name blog.benet.com;

       root /wordpress;

       index index.php index.html;


       location ~ \.php$ {

               root /wordpress;

               fastcgi_pass 192.168.8.30:9000;

               fastcgi_index index.php;

               fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

               include fastcgi_params;

       }

}

保存退出

systemctl restart nginx


(3)修改php服务器的配置文件

vim /etc/php-fpm.d/www.conf

定位并修改为:

listen = 192.168.8.30:9000

listen.allowed_clients = 192.168.8.10

保存退出

重启php:systemctl restart php-fpm


(4)从原服务器复制wordpress和zh的安装目录到php服务器

   scp -rp /wordpress root@192.168.8.30:/

   scp -rp /zh root@192.168.8.30:/


(5)客户端验证访问


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
C语言
【C语言】错题本(3)
【C语言】错题本(3)
91 0
|
8月前
|
存储 分布式计算 监控
ClickHouse简介
ClickHouse是一款专注于OLAP(联机分析处理)的列式存储数据库,以其极致的查询性能、高压缩率和实时分析能力著称。它通过列式存储、向量化查询引擎及分布式架构,满足大规模数据复杂聚合需求,适用于实时日志分析、用户行为分析等场景。然而,ClickHouse不支持事务(ACID),JOIN性能较弱,且对单行更新/删除效率低,不适合OLTP场景。其丰富的表引擎(如MergeTree系列)和数据类型(如LowCardinality优化类型)为不同业务需求提供了灵活支持。
|
调度 Android开发 开发者
构建高效Android应用:探究Kotlin多线程优化策略
【10月更文挑战第11天】本文探讨了如何在Kotlin中实现高效的多线程方案,特别是在Android应用开发中。通过介绍Kotlin协程的基础知识、异步数据加载的实际案例,以及合理使用不同调度器的方法,帮助开发者提升应用性能和用户体验。
211 4
|
自然语言处理 数据安全/隐私保护 iOS开发
ChatGPT使用学习(三):ChatGPT桌面版使用
本文介绍了ChatGPT桌面版,一个由OpenAI推出的独立桌面应用程序,支持离线使用、数据隐私保护和快速响应。用户界面友好,支持多语言交互。桌面版无需网络连接,保护用户数据隐私,并提供快速响应。用户可通过Github链接下载安装,使用谷歌账号登录。此外,OpenAI官方也发布了适用于macOS的桌面端应用,并向所有用户免费开放。
440 1
|
Linux 文件存储 开发工具
贝锐花生壳内网穿透:无需公网IP,远程访问自建WebDAV文件共享!
WebDAV共享协议支持几乎所有系统和设备,极大方便了文件共享。群晖NAS等设备可通过安装WebDAV套件实现文件共享,结合花生壳内网穿透服务,只需三步即可实现远程访问。具体步骤包括:1. 安装花生壳客户端;2. 登录并配置映射;3. 创建映射,生成远程访问地址。这样,用户可以随时随地访问和管理文件资源。
786 3
|
缓存 负载均衡 监控
Nginx实现高并发
通过应用上述策略,可以大幅提高Nginx的并发处理能力,从而在面对高流量时,保持稳定、快速的服务响应。不断地监控和调优系统将有助于保持服务器性能的最优化。
299 3
|
IDE 开发工具 Android开发
【Python编程入门】面对IDE编译错误:如何解读系统提示并解决问题
本文通过一个Python编码错误的实例,讲述了如何根据系统提示解读并解决IDE编译中出现的问题,强调了直接查阅官方文档的重要性,而不是盲目依赖百度搜索来解决问题。
296 2
【Python编程入门】面对IDE编译错误:如何解读系统提示并解决问题
|
监控 中间件 Go
Go 中间件的优雅实现:处理请求的艺术
Go 中间件的优雅实现:处理请求的艺术
|
机器学习/深度学习 自然语言处理 安全
Bert on ABSA、ASGCN、GAN、Sentic GCN…你都掌握了吗?一文总结情感分析必备经典模型(1)
Bert on ABSA、ASGCN、GAN、Sentic GCN…你都掌握了吗?一文总结情感分析必备经典模型
352 0
|
JSON 前端开发 Java
Spring第一课,了解IDEA里面的文件,回顾Cookie和Session,获取Session,Cookie,Header的方式
Spring第一课,了解IDEA里面的文件,回顾Cookie和Session,获取Session,Cookie,Header的方式