部署LNMP除了需要nginx,还需要mariadb 客户端工具 mariadb-server mariadb-devel php php-mysql(mysql为php一个模块) php-fpm(把php当服务启动,能占用9000端口,这个包不再yum源里,在lnmp-soft里)
LNMP (linux系统,nginx网站,php解释器(一种编程语言) mariadb,mariadb-devel 存数据的服务器(不装无法启服务)mariadb-devel相关依赖包。
1,yum -y install mariadb-server mariadb mariadb-devel php php-mysql
2.测试安装的php解释器是否安装成功进入/usr/local/nginx/html网页里写个php代码测试下vim test.php(每句话后面加;用于后面动静分离做测试)
<?php
$i=33;
echo $i;
?>
[root@proxy html]# php test.php
33
3,启动mysql(mariadb)
[root@proxy ~]# systemctl start mariadb //启动服务器
[root@proxy ~]# systemctl status mariadb //查看服务状态
[root@proxy ~]# systemctl enable mariadb //设置开机启动
ss -antulp mysql 查看端口确认服务是否启动
4,启动PHP-FPM服务
[root@proxy ~]# systemctl start php-fpm //启动服务
[root@proxy ~]# systemctl status php-fpm //查看服务状态
[root@proxy ~]# systemctl enable php-fpm //设置开机启动
关闭防火墙,selinux(setenf--)
构建成一个平台 构建LNMP平台(动静分离)
查看php-fpm配置文件,过滤后查看
grep -v "^;" /etc/php-fpm.d/www.conf | grep -v "^$" | wc -l
查看后只有二十行了
root@proxy etc]# vim /etc/php-fpm.d/www.conf
[www]
listen = 127.0.0.1:9000 //PHP端口号
pm.max_children = 32 //最大进程数量
pm.start_servers = 15 //最小进程数量
pm.min_spare_servers = 5 //最少需要几个空闲着的进程
pm.max_spare_servers = 32 //最多允许几个进程处于空闲状态
1,修改nginx的配置文件 /usr/local/nginx/conf/nginx.conf
下拉72行找到动态网站配置位置,去掉“location ~ \.php$ { ” 开头往下的注释,并把最长的那一行删除,最后一样params改为.conf。如下
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
************************如下
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
*************************************
2,然后重新加载一下,没有提示表示正确。有提示表示你没有启动nginx(先启动后加载)
/usr/local/nginx/sbin/nginx -s reload
动静分离完成
3,创建PHP页面,测试LNMP架构能否解析PHP页面
[root@proxy ~]# vim /usr/local/nginx/html/test1.php
1)创建PHP测试页面1,可以参考lnmp_soft/php_scripts/test.php:
<?php
$i="This is a test Page";
echo $i;
?>
2)创建PHP测试页面,连接并查询MariaDB数据库。
可以参考lnmp_soft/php_scripts/mysql.php:
[root@proxy ~]# vim /usr/local/nginx/html/test2.php
<?php
$mysqli = new mysqli('localhost','root','密码','mysql');
//注意:root为mysql账户名称,密码需要修改为实际mysql密码,无密码则留空即可
if (mysqli_connect_errno()){
die('Unable to connect!'). mysqli_connect_error();
}
$sql = "select * from user";
$result = $mysqli->query($sql);
while($row = $result->fetch_array()){
printf("Host:%s",$row[0]);
printf("</br>");
printf("Name:%s",$row[1]);
printf("</br>");
}
?>
4,测试(之前写过一个php脚本)
firefox 192.168.4.5/test.php (显示33)
firefox http://192.168.4.5/test1.php
firefox http://192.168.4.5/test2.php