Nginx搭配PHP,启动php-fpm遇到502 Bad Gateway的解决方法(附虚拟主机.conf配置文件)

Linux服务器中,搭建Nginx+PHP环境,配置虚拟主机,启动php-fpm后访问网站遇到502 Bad Gateway,主要从五个方面着手检查:

  1. 查看php-fpm是否正常运行
  2. 监听php-fpm配置文件中listen方式
  3. Nginx配置文件格式
  4. 虚拟主机网站目录磁盘访问权限
  5. 查看Nginx日志,对症下药

一、查看php-fpm运行状态

$ systemctl status php-fpm

二、监听php-fpm配置文件中listen方式

php-fpm默认配置文件路径:/etc/php-fpm.d/www.conf

有两个地方需要变动。

1.用户组,默认是apache,需要修改为nginx

user = apache
group = apache

===更改==>

user = nginx
group = nginx

2.listen方式

按需更改,fascgi_pass默认连接方式是UNIX Domain Socket,本文是配合推荐的Nginx配置方式,需要通过TCP方式进行连接。

listen = /run/php-fpm/www.sock

===更改==>

Listen = 127.0.0.1:9000

三、Nginx配置文件

检查文件格式,如括号、端口号和注释等。

server {
    listen       80;
    server_name  purywebsite.com;

    location / {
        root   /home/www;
        index  index.html index.htm index.php;
    }

	location ~ \.php$ {
          root           html;
          fastcgi_pass   127.0.0.1:9000;
          fastcgi_index  index.php;
          fastcgi_param  SCRIPT_FILENAME  /home/www$fastcgi_script_name;
          include        fastcgi_params;
      }
}

四、虚拟主机网站目录磁盘访问权限

  1. 用命令chmod修改文件|目录访问权限
  2. 配置SElinux安全策略,让Nginx进程能够访问网站目录

五、分析Nginx日志

错误日志:/var/log/nginx/error.log

参考资料

https://blog.csdn.net/linyunping/article/details/118083394

(版权归cpury.com所有,转载请注明出处。)