Nginx 配置反向代理时出现 502 Bad Gateway (13_ Permission denied) while connecting to upstream Sorry, the page
我们在 Nginx 配置反向代理后,出现如下报错:502 Bad Gateway(13: Permission denied) while connecting to upstreamSorry, the page you are looking for is currently unavailable.Please try again later.
我们在 Nginx 配置反向代理后,可能会出现如下报错:
502 Bad Gateway
(13: Permission denied) while connecting to upstream
Sorry, the page you are looking for is currently unavailable.<br />Please try again later.
这些错误,一般是由 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
更多推荐
所有评论(0)