Redirect 502在nginx上重定向时网关错误

Redirect 502在nginx上重定向时网关错误,redirect,nginx,reverse-proxy,Redirect,Nginx,Reverse Proxy,我对nginx重定向有问题。我在nginx1.4.4上工作,我有两个独立的重定向。它应该以两种方式工作: 第一次重定向:address1.com重定向到address2.com-> address2.com重定向到应用程序所在的addres2.com:1234 第二个重定向直接来自ddress2.com: -address2.com重定向到address2.com:1234 现在的问题是: -从address1.com重定向到address2.com有效,但address2.com重定向到add

我对nginx重定向有问题。我在nginx1.4.4上工作,我有两个独立的重定向。它应该以两种方式工作: 第一次重定向:address1.com重定向到address2.com-> address2.com重定向到应用程序所在的addres2.com:1234

第二个重定向直接来自ddress2.com: -address2.com重定向到address2.com:1234

现在的问题是: -从address1.com重定向到address2.com有效,但address2.com重定向到address2.com:端口无效。它以502坏网关错误结束。配置和

日志中的错误如下所示: error.log中的信息:

[error] : *386 connect() failed (111: Connection refused) while connecting to upstream, client: {client ip addr}, server:{server name}, request: 
GET/HTTP/1.1,上游:“:{port}”,主机:“{server name}”

Nginx使用许多存储在conf.d位置的.conf文件

address1.conf(本工程):

address2.com conf文件(此文件不包括):

有趣的是,我有另一个应用程序在addr3.com->addr3.com方案上工作:端口和重定向工作得非常完美。唯一的

address2.conf和address3.conf之间的区别在于应用程序工作的端口。每个地址使用https,端口443在防火墙上打开

希望我的描述足够详细,如果不只是让我知道。 我已经为这个问题挣扎了几天,还没有找到任何适合我的提示或解决方案


非常感谢您的帮助。

问题可能出在SELinux上。检查它是否使用
sestatus
运行。由于某些转发正在为您工作,此命令可能是多余的,但其他人可能需要它:

sudo setsebool -P httpd_can_network_connect 1
要为特定端口启用forwaring(这可能是您的问题),请运行以下命令:

sudo semanage port -a -t http_port_t -p tcp 8088
用有问题的端口替换8088

可能找不到命令
semanage
。如何安装它取决于发行版,但您很可能可以通过谷歌找到解决方案

sudo setsebool -P httpd_can_network_connect 1
sudo semanage port -a -t http_port_t -p tcp 8088