nginx:连接到上游时连接()失败(111:连接被拒绝)
Posted
技术标签:
【中文标题】nginx:连接到上游时连接()失败(111:连接被拒绝)【英文标题】:nginx: connect() failed (111: Connection refused) while connecting to upstream 【发布时间】:2014-02-26 18:18:30 【问题描述】:尝试部署我的第一个门户。
当我通过浏览器发送请求时,我在浏览器中收到 502 网关超时错误
当我检查日志时,我得到了这个错误
2014/02/03 09:00:32 [error] 16607#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 14.159.131.19, server: foo.com, request: "GET HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "22.11.180.154"
有没有权限相关的问题
【问题讨论】:
请添加信息以帮助理解问题、您的配置、您做了什么?哪些链接被破坏,如果有任何工作,等等 我的问题解决了....我的服务器上没有安装php 见:***.com/questions/15852884/nginx-connect-failed-error @lucky 所以我认为最好关闭这个问题。 【参考方案1】:我认为该解决方案无论如何都行不通,因为您会在错误日志文件中看到一些错误消息。
解决方案比我想象的要容易得多。
只需打开以下路径到您的 php5-fpm
sudo nano /etc/php5/fpm/pool.d/www.conf
或者如果你是管理员“root”
nano /etc/php5/fpm/pool.d/www.conf
然后找到这一行并取消注释:
listen.allowed_clients = 127.0.0.1
此解决方案将使您能够在您的虚拟主机块中使用 listen = 127.0.0.1:9000
像这样:fastcgi_pass 127.0.0.1:9000;
完成修改后,您只需重启或重新加载 Nginx 和 Php5-fpm
Php5-fpm
sudo service php5-fpm restart
或
sudo service php5-fpm reload
Nginx
sudo service nginx restart
或
sudo service nginx reload
来自cmets:
也评论一下
;listen = /var/run/php5-fpm.sock
并添加
listen = 9000
【讨论】:
listen = 9000
和 ;listen = /var/run/php5-fpm.sock
在 CentOS 7 上,这个文件对我来说位于 /etc/php-fpm.d/www.conf
,我必须添加 listen = 9000
并注释掉 listen = /var/run/php-fpm/php-fpm.sock
。
为什么不将 NGINX 配置更改为使用套接字而不是 localhost:9000?通过将fastcgi_pass
行更改为“astcgi_pass unix:/run/php/php7.0-fpm.sock;
【参考方案2】:
我在 NGINX conf 中写了两个上游时遇到了同样的问题
upstream php_upstream
server unix:/var/run/php/my.site.sock;
server 127.0.0.1:9000;
...
fastcgi_pass php_upstream;
但在/etc/php/7.3/fpm/pool.d/www.conf
我只听了套接字
listen = /var/run/php/my.site.sock
所以我只需要套接字,不需要任何127.0.0.1:9000
,我只是删除了上游 IP+端口
upstream php_upstream
server unix:/var/run/php/my.site.sock;
这可以在没有上游的情况下重写
fastcgi_pass unix:/var/run/php/my.site.sock;
【讨论】:
【参考方案3】:这可能对某人有用:
如果您在 Mac 上安装了多个版本的 PHP,例如 8.0 和 7.4,并且您尝试了多个选项但仍然收到 502 网关错误,请尝试检查您的代客如何与您的 PHP 版本和 Nginx 连接。
从终端运行 valet use php@7.4
如果这是您使用的版本。
当前版本将被取消链接,新版本链接然后Nginx和php@7.4将被重新启动。
【讨论】:
以上是关于nginx:连接到上游时连接()失败(111:连接被拒绝)的主要内容,如果未能解决你的问题,请参考以下文章
cookie-cutter django nginx connect() 在连接到上游时失败(111:连接被拒绝),
Nginx 错误失败(111:连接被拒绝)同时连接到上游,docker-compose nodejs
Elastic Beanstalk 上的 Docker - 连接到上游时 connect() 失败(111:连接被拒绝)