如果 nginx + php 出现 502 报错.note
一般经常出现在网页邮箱上
·访问报错:

这里使用的是 php8.2-fpm
首先查看 error.log
cat /var/log/nginx/error.log
这里说,连接到 /run/php/php8.2-fpm.sock 失败,原因是权限拒绝,那么这就很好办了
可以看到, php8.2-fpm.sock 的 所属用户,和组 是 www-data
而题目要求将 Nginx 的 进程用户和组 更改为 webuser
那么问题原因就出来了,因为 nginx 的进程用户和组 不是 php8.2-fpm 默认的 www-data,因此权限被拒绝
·解决:
cd /run/php
chown -R webuser:webuser . //将文件和目录的所属用户和组更改为 Nginx 的进程用户和组即可。
# 可以将这个写成 while 脚本,然后方进/etc/profile中一直执行:
while true; do chown -R webuser:webuser /run/php ; sleep 1 done再次访问:

·原因:
因为题目要求修改 Nginx 的进程用户和组为 webuser,而 php8.2-fpm 软件包,下载后,默认的 数组和所属用户为:www-data,且对于其它人的权限是,不可读也不可写,而 Nginx的webuser 没有权限去访问 php8.2-fpm 的文件,因此访问报错·注意:
解决好之后,当安装了 WebMail(roundcube)之后,该文件的权限又会被更改会 www-data,因此安装完 roundcube之后,还需要再修改一次进程用户和组