栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Nginx出现:connect() to ******:8080 failed (13: Permission denied) while connecting to upstream

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Nginx出现:connect() to ******:8080 failed (13: Permission denied) while connecting to upstream

Nginx的错误日志

错误背景:

配置服务器集群时,单个服务正常,但是放到nginx中访问不成功,前端报错如下截图,nginx中的错误日志如上截图;

错误分析:

两个Tomcat服务器在同一个服务器上面部署,端口号分别为8080和8081,单独访问是可以成功的,排除单个服务器出故障的可能性,那大概率就是nginx或者nginx所在服务器上面出错;

从日志中可以查看到大概有两种类型的错误信息,1是权限不够,2 是upstream没有成功访问到所指向的服务;

亲测解决方式:

问题1(可以直接先试问题2的解决方案是否可行):

不排除有的虚拟机是nginx在执行任务时没有获得到足够的权限,那就可以给nginx赋予足够权限

sudo vi /etc/sudoers 

找到如下一行
root    ALL=(ALL)       ALL
直接拷贝一个属于nginx的 超级管理员权限
nginx   ALL=(ALL)       ALL

然后wq保存

保存之后让文件生效 sudo source /etc/sudoers

问题2

原因是SELinux限制了nginx对外访问的权限,按照如下操作设置允许远程网络连接,以上两个错误我是用下面的操作解决的;

查网络访问的配置
getsebool -a | grep httpd_can_network_connect
如果结果如下
httpd_can_network_connect --> off

 
则执行如下命令打开:
#SELinux命令,临时配置,重启后失效
setsebool httpd_can_network_connect=1
写入配置文件的命令,重启后保留
setsebool -P httpd_can_network_connect 1 推荐这种方式

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/603744.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号