Nginx配置端口时出现 502 Bad Gateway (13_ Permission denied) while connecting to upstream

  1. 修改nginx.conf配置文件(/etc/nginx/nginx.conf)增加端口转发配置
server {
    listen  8077;
    location /common/captcha {
        proxy_pass     http://192.168.160.188:8070/; 
        }
    }
  1. 保存配置文件,重启nginx(sudo service nginx restart),出现报错:
[root@m174 nginx]# service nginx restart
Redirecting to /bin/systemctl restart nginx.service
Job for nginx.service failed because the control process exited with error code.
See "systemctl status nginx.service" and "journalctl -xeu nginx.service" for details.

nginx[4004341]: nginx: [emerg] bind() to 0.0.0.0:8077 failed (13: Permission denied)
  1. 这种情况,查看http允许访问的端口:
semanage port -l | grep http_port_t
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988
  1. 将要启动的端口(8077)加入到如上端口列表中,重新启动nginx发现可以成功启动
semanage port -a -t http_port_t  -p tcp 8077

第二类问题:访问需要转发的接口路径报错502 Bad Gateway
5. 查看nginx错误日志,错误显示如下:

connect() to 192.168.160.188:8070 failed (13: Permission denied) while connecting to upstream
  1. 这些错误,一般是由 SELinux 引起的(https://stackoverflow.com/questions/23948527/13-permission-denied-while-connecting-to-upstreamnginx)。
    原因是,我们的 Linux 操作系统的 httpd 服务没有开启 httpd_can_network_connect 配置项,该配置项用于控制服务器是否可以连接到网络上的其他服务器,在 Nginx 配置反向代理后,我们访问 Nginx 所在的服务器,其要将请求反向代理到真正请求的服务器,此时需要 Nginx 所在的服务器发送 http 网络请求连接到网络上的其他服务器,但是由于 Nginx 所在的服务器的 httpd 服务没有开启 httpd_can_network_connect 配置项,所以 Nginx 所在的服务器无法发送网络请求,最后导致了上述报错。
    因此,要解决上述报错,我们只需要将 httpd 服务的 httpd_can_network_connect 配置项开启即可。

查看 httpd 服务的 httpd_can_network_connect 配置项是否开启:

getsebool -a | grep httpd_can_network_connect

在这里插入图片描述
开启 httpd 服务的 httpd_can_network_connect 配置项:

setsebool -P httpd_can_network_connect 1

在这里插入图片描述
第三类问题:访问页面路径报错403
在这里插入图片描述在这里插入图片描述
检查nginx配置文件首行,查看配置指定的user用户是谁,和当前用户是否一致

user root;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值