我有一台使用 Nginx 和 PHP-FPM(PHP v7.4)的服务器。它运行良好,出于某些原因,我执行了以下命令:
apt-get --purge remove php-common
之后,我执行了这个:
apt-get install php-common php-mysql php-cli
命令执行成功,但是当我想要访问服务器上的网站时出现 502 错误:
需要注意的是,这个服务器上有好几个项目。而我里面什么都没有/etc/nginx/sites-available
。我所有的配置都在下面/etc/nginx/conf.d
。参见:
它们每个都是一个项目。现在,我想我需要设置为 PHP-FPM 来代替conf.d
。sites-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;
}
}