一、环境准备
Centos7.4系统,关闭防火墙,关闭NetworkManager,关闭Selinux。
IP为172.17.2.198
nginx-1.10-3源码包
php-7.2-2源码包
mysql-5.7.17 RPM包
二、Nginx源码编译安装或者制作RPM包安装。PHP同理
三、启动Nginx
cd /usr/local/nginx
./sbin/nginx
80端口已监听。
cd /usr/local/nginx/html
echo "hello!\nwelcome nginx"
cp /root/testmysql.php .
cp /root/testphp.php .
vim testmysql.php
vim testphp.php
四、访问Nginx主页,查看效果
nginx启动成功。
那么,我们希望Nginx可以搭配php使用,可以解析php网页。接下来我们就要修改nginx的配置。
五、修改nginx配置文件
cd /usr/local/nginx/conf/
vim nginx.conf
改成以下内容
打开php解析,让php页面通过本机的9000端口php模块解析后,再发回给用户。
重启nginx
/usr/local/nginx/sbin/nginx -s reload
六、修改php配置,启动php-fpm
cd /usr/local/php/etc/php-fpm.d/
vim www.conf
这一项改成
systemctl restart php-fpm
netstat -antpu | grep 9000
测试一下php页面是否能解析
测试成功。php正常工作。
七、安装Mysql数据库
mkdir mysql
tar -xf mysql-5.7.17.tar -C mysql
cd mysql/
rpm -ivh mysql-community-*
严重缺少很多依赖包。这样吧。把这个文件夹,弄成yum源
命令没找到。查查是哪个包的
安装这个包
yum -y install createrepo.noarch
修改本级yum源
yum -y install mysql-community-server-5.7.17-1.el7.x86_64
安装mysql-5.7.17
systemctl restart mysqld
grep password /var/log/mysqld.log
systemctl stop mysqld
vim /etc/my.cnf
添加密码策略,长度
密码策略为0
密码长度为6位
启动mysql
systemctl restart mysqld
利用系统初始化密码,进入mysql
修改密码
设置mysql密码为123456,刷新权限
导入一份mysql的备份数据
服务器的ip地址为172.17.2.198,
连接mysql的测试php文件,里面的地址是错误的,还是mysql密码是错误的,修改正确
测试页面
流程为客户端访问nginx网页的testmysql.php页面。nginx把页面转发给9000端口的php-fpm处理。连接数据库,或者脚本所需的信息,再反馈给客户端。
到此,LNMP平台搭建成功。
为了后续的压测实验。在nginx这里添加nginx状态监控,添加php状态监控。
cd /usr/local/nginx/conf/
vim nginx.conf
在server定义里面,添加这样的一个location
/usr/local/nginx/sbin/nginx -s reload
访问一下,看看情况
正常获取nginx的状态
修改php配置文件,设定获取php状态
cd /usr/local/php/etc/php-f-m.d
vim www.conf
监听9000端口。原本的配置是监听socks的
去注释,打开配置,后面添加匹配php页面。
systemctl restart php-fpm