部署LNMP动态网站
- 安装LNMP平台相关软件
- 1. 安装软件包
- 2. 启动服务(nginx、mariadb、php-fpm)
- 3. 修改Nginx配置文件,实现动静分离
- 4. 配置数据库
- 上线wordpress代码 (测试搭建的LNMP环境是否可以使用)
- 1. 上线php动态网站代码
- 2. 初始化网站配置(使用客户端访问web服务器IP)
- 网站后台管理
- 1. 访问数据库
- 2. 查看配置信息
方案:
LNMP 网站运行环境 Linux / nginx / mysql / php
安装LNMP平台相关软件
mariadb(数据库客户端软件)、mariadb-server(数据库服务器软件)、mariadb-devel(其他客户端软件的依赖包)、php(解释器)、php-fpm(进程管理器服务)、php-mysql(PHP的数据库扩展包)
1. 安装软件包
[root@centos7 ~]# yum -y install gcc openssl-devel pcre-devel #安装依赖包
[root@centos7 ~]# tar -xf nginx-1.12.2.tar.gz
[root@centos7 ~]# cd nginx-1.12.2
[root@centos7 nginx-1.12.2]# ./configure \
--with-http_ssl_module \
--with-http_stub_status_module
[root@centos7 nginx-1.12.2]# make && make install
[root@centos7 ~]# yum -y install mariadb mariadb-server mariadb-devel
[root@centos7 ~]# yum -y install php php-mysql php-fpm
2. 启动服务(nginx、mariadb、php-fpm)
[root@centos7 ~]# /usr/local/nginx/sbin/nginx #启动Nginx服务
[root@centos7 ~]# echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.local # 保证有运行权限 下次开机自启
[root@centos7 ~]# chmod +x /etc/rc.local
[root@centos7 ~]# ss -utnlp | grep :80 #查看端口信息
[root@centos7 ~]# systemctl start mariadb #启动mariadb服务器
[root@centos7 ~]# systemctl enable mariadb #设置开机自启
[root@centos7 ~]# systemctl start php-fpm #启动php-fpm服务
[root@centos7 ~]# systemctl enable php-fpm #设置开机自启
启动服务出错 检查配置文件
/usr/local/nginx/sbin/nginx -t
3. 修改Nginx配置文件,实现动静分离
修改配置文件,通过两个location实现动静分离,一个location匹配动态页面,一个location匹配其他所有页面
注意修改默认首页为index.php
vim +65 /usr/local/nginx/conf/nginx.conf # 可以直接定位到65行
# 重新加载配置
/usr/local/nginx/sbin/nginx -s reload
4. 配置数据库
为网站提前创建一个数据库、添加账户并设置该账户有数据库访问权限
[root@centos7 ~]# mysql
#创建数据库,数据库名称为wordpress,该数据库支持中文(character set utf8mb4)
MariaDB [(none)]> create database wordpress character set utf8mb4;
MariaDB [(none)]> grant all on wordpress.* to wordpress@'localhost' identified by 'wordpress';
#语法格式:grant 权限 on 数据库名.表名 to 用户名@客户端主机 identified by 密码
#创建用户并授权,用户名为wordpress,该用户对wordpress数据库下的所有表有所有权限
#wordpress用户的密码是wordpress,授权该用户可以从localhost主机登录数据库服务器
#all代表所有权限(wordpress用户可以对wordpress数据库中所有表有所有权限)
#wordpress.*代表wordpress数据库中的所有表
MariaDB [(none)]> grant all on wordpress.* to wordpress@'192.168.2.11' identified by 'wordpress';
MariaDB [(none)]> flush privileges;
#刷新权限
MariaDB [(none)]> exit
#退出数据库
验证是否成功
看看是否可以使用新创建的账户登录数据库服务器:
mysql -uwordpress -pwordpress -h 192.168.2.11 wordpress
#-u指定数据库账户名称,-p指定数据库账户的密码,-h指定需要远程数据库的IP地址
#最后的wordpress为数据库的名称
上线wordpress代码 (测试搭建的LNMP环境是否可以使用)
软件使用php语言编写,创建的网站信息是存储在数据库里面的。
wordpress的工作页面是通过网站服务显示的。
1. 上线php动态网站代码
[root@centos7 ~]# yum install -y unzip
[root@centos7~]# unzip wordpress.zip
[root@centos7~]# cd wordpress
[root@centos7 wordpress]# tar -xf wordpress-5.0.3-zh_CN.tar.gz
[root@centos7 wordpress]# cp -r wordpress/* /usr/local/nginx/html/
[root@centos7 wordpress]# chown -R apache.apache /usr/local/nginx/html/ # -R 递归修改
动态网站运行过程中,php脚本需要对网站目录有读写权限,而php-fpm默认启动用户为apache
2. 初始化网站配置(使用客户端访问web服务器IP)
firefox http://192.168.2.11/
修改配置文件 加首页名
服务器会自动进入config配置页面 效果如下:
开发人员在写代码的时候并不知道未来数据库服务器的IP、端口、数据库名称、账户等信息,该配置页面主要的作用就是动态配置数据库信息,根据前面步骤配置的数据库信息填空即可:
点击提交即可完成数据库的初始化工作,php动态脚本会自动在wordpress数据库中创建若干数据表,后期网站的数据都会写入对并的数据表中。
第一次使用Wordpress需要给你的网站设置基本信息,如网站标题、网站管理员账户与密码等信息,配置完成后点击安装wordpress即可:
网站后台管理
1. 访问数据库
> mysql
> show database;
> use wordpress;
# 看已有的表
show tables;
2. 查看配置信息