搭建nginx+php-fpm+php服务遇到的问题

本文详细介绍如何配置PHP环境,包括修改php-fpm配置文件、www.conf配置文件、php.ini及nginx.conf等关键步骤,确保PHP应用顺利运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

a.php-fpm配置文件修改(php-fpm.conf

cp php-fpm.conf.default php-fpm.conf

vi php-fpm.conf

去掉 ;pid = run/php-fpm.pid中的


b.www.conf配置文件修改(www.conf

cp www.conf.defalut www.conf

vi www.conf

usergroupnobody修改为www-data


c.php.ini修改

将;cgi.fix_pathinfo1修改为cgi.fix_pathinfo0(去掉这行;不然SCRIPT_FILENAME这个变量无法使用默认值为1,是为了防止当文件不存在的时,阻止Nginx将请求发送到后端的PHP-FPM模块,从而避免恶意脚本注入攻击)


d.nginx.conf配置文件的修改


这个地方默认是被注释掉的,去掉注释同时将/script$fastcgi_script_name修改为$document_root$fastcgi_script_name(不修改的话在你访问index.php的时候会显示File not found.)


这里也可以这样做修改   :

因此不再建议大家使用以下方式(搜了一下,网上大量的文章,并且nginx.conf的默认配置也是使用这种方式):

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

而使用最新的方式:

include fastcgi.conf;



将第一行的user nobody修改为user www-data


在上图中的地方添加index.php


如果不是在root权限下面的话,记得修改nginx的端口号(1024以下的端口号都是在root权限下的),不然无法启动nginx



启动nginx遇到的问题“the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /opt/nginx/conf/nginx.conf:1” 

问题出现的原因:nginx的主进程启动是需要root权限的  可解决的办法:修改nginx文件的权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值