无法访问Nginx容器的分析思路

发布时间:2022-07-05 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了无法访问Nginx容器的分析思路脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

无法访问Nginx容器的分析思路

文章目录

  • 1 问题背景
  • 2 分析思路
  • 3 总结

1 问题背景

最近在阿里重新搭建了生产环境的若依系统,但是一直无法访问若依系统的后台首页。在本地用IDEA加虚拟机是完全没问题,能正常访问。

2 分析思路

  1. 先检查阿里云服务器是否开启了火墙,一般都开启了,因此需要在防火墙配置若依系统用到的端口号,相关的命令行如下F1a;
# 查看防火墙是否开启
firewall-cmd --state
# 或
Systemctl status firewalld
# 查看防火墙已开启的端口
firewall-cmd --zone=public --list-ports
# 添加防火墙端口号
firewall-cmd --zone=public --add-port=端口号/tcp --PErmanent
# 删除防火墙端口号
firewall-cmd --zone=public --remove-port=端口号/tcp --permanent
# 重新加载防火墙配置
firewall-cmd --reload
  1. 阿里云服务器还默认开启了端口安全策略,需要前往阿里云Web控制台配置端口号才能正常访问项目

  2. 涉及到Nginx容器,必须要检查nginx配置文件的监听端口号是否正确。注意,这里是讲Nginx容器,非容器不需要太关注这点。首先使用docker ps -a命令查看Nginx容器监听的端口号,如下图所示,后面的是Nginx容器的端口号,前面的是阿里云服务器的端口:

    无法访问Nginx容器的分析思路

    如上图所示:当我访问阿里云服务器IP:11180地址时,服务器会将数据转发到Nginx容器的80端口。一个是服务器的端口,是物理存在的,一个是容器端口,是逻辑上虚拟的。验证能否访问成功,最简单的就是输入curl http://localhost:阿里云服务器端口号

  3. 带着前面看到的11180以及80端口去检查Nginx容器的配置文件,Nginx容器的配置文件是一个/xxx/conf.d/default.conf。检查配置文件中监听的端口号是不是Nginx容器的端口号80,如下所示:

    无法访问Nginx容器的分析思路

  4. 检查项目中前端配置的端口与Nginx容器配置的阿里云服务器端口11180一致。因为前端项目是打包放在了Nginx容器的挂载的数据卷路径上面的,因此要与服务器端口一致,而不是容器的端口。

  5. 检查Nginx配置文件转发到后端项目的端口号是否与后端项目配置的一致。如下图所示:

    无法访问Nginx容器的分析思路

    如上图所示19393就是后端项目的端口号

  6. 检查Nginx配置文件配置的前端静态资(前端的dist包)路径是否正确。需要使用docker inspect nginx命令查看Nginx容器挂载的数据卷路径。如下图所示:

    无法访问Nginx容器的分析思路

    我们把前端的资源包放在服务器的路径上,但是Nginx配置文件中要写容器内的路径。

3 总结

  1. 检查防火墙端口号
  2. 检查配置文件配置的端口
  3. curl http://localhost:Nginx容器的阿里云服务器端口号测试是否能通

脚本宝典总结

以上是脚本宝典为你收集整理的无法访问Nginx容器的分析思路全部内容,希望文章能够帮你解决无法访问Nginx容器的分析思路所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。