如何连接php-fpm和nginx?

如何连接php-fpm和nginx?

我有一台使用 Nginx 和 PHP-FPM(PHP v7.4)的服务器。它运行良好,出于某些原因,我执行了以下命令:

apt-get --purge remove php-common

之后,我执行了这个:

apt-get install php-common php-mysql php-cli

命令执行成功,但是当我想要访问服务器上的网站时出现 502 错误:

502 错误的屏幕截图

需要注意的是,这个服务器上有好几个项目。而我里面什么都没有/etc/nginx/sites-available。我所有的配置都在下面/etc/nginx/conf.d。参见:

在此处输入图片描述

它们每个都是一个项目。现在,我想我需要设置为 PHP-FPM 来代替conf.dsites-available有什么想法可以做到这一点吗?

你能帮我一下我该如何调试它吗?

答案1

你必须确保已经重新安装了所需的软件,特别是 php-fpm

sudo apt-get install php-fpm

然后启动php fpm,如下所示

sudo systemctl start php7.4-fpm
sudo systemctl enable php7.4-fpm

还要确保 php-fpm 在 nginx 的 server.conf 中正确设置。这肯定没问题,因为你没有更改它,而且它在你执行清除命令之前一直正常工作

server {
    listen 80;
    server_name example.com;
    root /var/www/example.com;

    location / {
        index index.php index.html;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

相关内容