Ubuntu18.04环境Nginx代理Geoserver(Tomcat)重启后返回502错误求解
错误日志返回111: Connection refused说明Nginx无法和127.0.0.1的8080端口建立连接,和你现有Nginx的SSL配置、路由规则无关,优先排查上游Tomcat+Geoserver服务的状态:
- 第一步:验证Tomcat服务是否正常运行
重启服务器后出现该问题,90%以上的原因是Tomcat没有配置开机自启,重启后服务未启动。执行命令查看Tomcat状态:
如果显示服务未运行,先手动启动:# 替换tomcat9为你实际安装的Tomcat版本,如tomcat8 systemctl status tomcat9
本地验证可以正常访问systemctl start tomcat9http://127.0.0.1:8080/geoserver后,设置开机自启避免后续重启再出问题:systemctl enable tomcat9 - 第二步:验证8080端口监听状态
如果Tomcat显示运行正常但还是报错,执行命令查看8080端口的绑定地址:
如果返回结果显示监听地址是ss -tulpn | grep 8080::1:8080(仅IPv6本地回环)而非0.0.0.0:8080或者127.0.0.1:8080,可以修改Nginx配置的proxy_pass规则为:
或者修改Tomcat的proxy_pass http://[::1]:8080;conf/server.xml文件中Connector标签的address属性为0.0.0.0,重启Tomcat即可。 - 第三步:验证Geoserver上下文路径
上述检查都正常的情况下,确认你的Geoserver包部署到Tomcat的webapps目录下时,文件夹名称是否为geoserver,如果修改过文件夹名称,需要同步调整Nginx的location匹配规则。
你当前提交的Nginx配置本身没有语法错误,只要上游服务状态正常即可正常转发请求。
内容的提问来源于stack exchange,提问作者lios
相关产品推荐
相关产品推荐

