CentOS下通过yum搭建lnmp(单版本PHP)
lnmp即 Linux + Nginx + Mysql + PHP,本文以 CentOS 7.x 为例介绍如何通过 yum 的方式搭建完整的 lnmp 环境。
实现目标
1、通过 yum 方式安装 nginx、mysql 8.0、php 7.4
2、安装 php 模块,部署网站,实现运行 php ,读取数据库
安装相应软件
1、安装 nginx 并部署网站
参考下方教程选择 yum 方式安装 nginx ,并且建立一个虚拟主机站点。
【服务器】CentOS安装nginx与部署网站
2、安装 php 7.4
参考下方教程选择 yum 方式安装 php 。
【服务器】CentOS下安装指定版本的PHP
3、安装 mysql 8.0 且完成修改 mysql root 初始密码操作
参考下方教程选择 yum 方式安装 mysql 。
【服务器】CentOS下安装mysql
配置 nginx 实现支持 PHP 程序
1、安装php 组件 php-fpm
yum -y install php-fpm
2、(方式一:端口式)修改 php-fpm 及 nginx 配置,使其可以运行 php
2.1、修改 php-fpm 配置
# 编辑
vim /etc/php-fpm.d/www.conf
# 将 apache 改为 nginx(约24,26行)
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
2.2、修改 nginx 虚拟主机站点配置支持运行 PHP(如 www.abc.com.conf)
# 站点主目录(省略部分内容)
root /home/wwwroot/www.abc.com;
# 以上为示例配置,在 root 节点下添加以下内容(关键)
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
3、(方式二:套接字)修改 php-fpm 及 nginx 配置,使其可以运行 php
3.1、修改 php-fpm 配置
# 编辑
vim /etc/php-fpm.d/www.conf
# 将 apache 改为 nginx(约24,26行)
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
# 注销原配置(约38行),前面加分号 ; 注销
;listen = 127.0.0.1:9000
# 添加以下配置
listen = /run/php-fpm/php74-fpm.sock
# 配置权限(约51行),去掉面前分号,将0660修改为0666
listen.mode = 0666
3.2、修改 nginx 虚拟主机站点配置支持运行 PHP(如 www.abc.com.conf)
# 站点主目录(省略部分内容)
root /home/wwwroot/www.abc.com;
# 以上为示例配置,在 root 节点下添加以下内容(关键)
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/php74-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
3.3、重启服务并设置权限
# 重启 php-fpm
systemctl restart php-fpm.service
# 重启 nginx
systemctl restart nginx.service
# 套接字文件权限(如权限报错可设置)
chmod 666 /run/php-fpm/php74-fpm.sock
4、建立 php 文件,输入域名测试是否正常运行 php 程序
# 建立php测试文件
vim /home/wwwroot/www.abc.com/phpinfo.php
# 输入以下内容并保存
<?php
phpinfo();
>
# 在浏览器输入域名进行测试
安装 php 组件 php-mysqli
如需连接 mysql 进行数据库读写操作,大部分 php 框架都需组件 mysqli ,可通过以下命令安装
yum -y install php-mysqli
设置开机自启动
# 开机自启动 php-fpm
systemctl enable php-fpm
# 开机自启动 nginx
systemctl enable nginx
# 开机自启动 mysql
systemctl enable mysqld
额外说明
1、如需安装其它组件,通过 yum 进行安装即可,格式如下
# 格式
yum install php-模块名
# 示例
yum install php-pdo
2、通过 phpmyadmin 管理数据库可能会报 Error during session start; 错误,通过以下命令设置 session 目录相应权限
chown -R nginx:nginx /var/lib/php/session
3、每次修改 php-fpm 或 nginx 及虚拟主机站点配置文件后,需重启 php-fpm 及 nginx 才能生效。
# 重启 php-fpm
systemctl restart php-fpm.service
# 重启 nginx
systemctl restart nginx.service
总结
通过以上方式即可搭建 lnmp 运行环境,示例中多为默认参数及配置,可在实际使用中根据情况进行调整,如添加更改账号及用户组、更改相关路径、安装 php 模块等。
版权声明:本文为原创文章,版权归 本站 所有,未经许可,不得转载。
本文地址:https://www.yiisu.vip/linux_centos_yum_instll_php.html
如对本文有疑问可在评论区留言,博主会尽力解答,同时欢迎关注微信公众号“云计算课代表”。