ubuntu 服务器重启后 nginx 502 错误网关

nginx 502 bad gateway after ubuntu server restart

我有一个 ubuntu 服务器配置为 运行 使用 nginx 和 fastcgi 的情况。问题是重新启动后,任何请求都会在浏览器中给出 502 错误网关。

在错误日志中,错误如下所示:

 connect() to unix:/var/run/fastcgi.socket-4 failed (2: No such file or directory) while connecting to upstream

在我手动创建文件后(我不知道这是否正确)错误变为:

connect() to unix:/var/run/fastcgi.socket-4 failed (111: Connection refused) while connecting to upstream

nginx 服务器对每个网站的配置设置如下:

 location ~ \.php$ {
                        fastcgi_pass                    unix:/var/run/fastcgi.socket-4;
                        fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
                        fastcgi_param   SERVER_SOFTWARE         nginx;
                        fastcgi_param   QUERY_STRING            $query_string;
                        fastcgi_param   REQUEST_METHOD          $request_method;
                        fastcgi_param   CONTENT_TYPE            $content_type;
                        fastcgi_param   CONTENT_LENGTH          $content_length;
                        fastcgi_param   SCRIPT_FILENAME         /document_root/$fastcgi_scr
                        fastcgi_param   SCRIPT_NAME             $fastcgi_script_name;
                        fastcgi_param   REQUEST_URI             $request_uri;
                        fastcgi_param   DOCUMENT_URI            $document_uri;
                        fastcgi_param   DOCUMENT_ROOT           /document_root;
                        fastcgi_param   SERVER_PROTOCOL         $server_protocol;
                        fastcgi_param   REMOTE_ADDR             $remote_addr;
                        fastcgi_param   REMOTE_PORT             $remote_port;
                        fastcgi_param   SERVER_ADDR             $server_addr;
                        fastcgi_param   SERVER_PORT             $server_port;
                        fastcgi_param   SERVER_NAME             $server_name;
                        fastcgi_param   REDIRECT_STATUS         200;
                        fastcgi_index                   index.php;
                        fastcgi_intercept_errors        on;
                        }

请注意,我对 nginx 很陌生,但是我在 apache 和 php 方面有经验和诀窍。

502 bad gateway错误是指后端服务器(你的情况是php)没有正常运行,因为它与服务器重启有关,我猜它是相关的它没有在启动时启动。

因为我不知道服务名称,运行 sudo service --status-all 列出了系统上的所有服务。

在找到 php 服务名称(在您的情况下变成 spawn-fcgi 之后,您可以使用

启动它
sudo service spawn-fcgi start

sudo /etc/init.d/spawn-fcgi start

你需要确保它在启动时自动启动,发现你可以很容易地google如何使服务在启动时启动,非常简单