nginx开启后主机无法访问虚拟机的nginx解决方案

nginx开启后主机无法访问虚拟机的nginx解决方案

如果IP可以通的话 一般是防火墙引起

方法1 cat /etc/sysconfig/iptables

# Generated by iptables-save v1.4.7 on Fri Nov 18 01:51:49 2016
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [40:3968]
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 
COMMIT

加-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

方法2

[root@localhost ]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[root@localhost ]# /etc/init.d/iptables save
[root@localhost ]# /etc/init.d/iptables restart

有其他交流的想法,可以加我创建的Q群:820080257

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用Docker启动Nginx时,主机无法访问到镜像地址可能有几种原因。 首先,确保Nginx容器正确运行并且绑定正确的端口。在运行Nginx容器时,使用`-p`或`--publish`参数将容器端口与主机端口进行绑定。例如,以下命令将容器端口80绑定到主机端口8080: ``` docker run -d -p 8080:80 nginx ``` 然后,可以通过在主机上打开浏览器并访问`http://localhost:8080`来检查Nginx是否能够正常访问。如果可以成功访问,说明Nginx容器已经正确运行,并且主机可以访问到镜像地址。 如果无法访问,请确保主机防火墙设置正确。Docker使用网络地址转换(NAT)来将容器端口映射到主机端口。如果主机防火墙没有正确配置,可能会阻止对指定端口的访问。尝试在主机上禁用防火墙或者手动配置防火墙规则来允许对指定端口的访问。 如果防火墙设置正确,仍然无法访问,请确保主机IP地址与Docker容器网络的IP地址范围不冲突。Docker创建的默认网络配置为`bridge`,它分配的IP地址范围为172.17.0.0/16。如果主机IP地址与此范围冲突,可能会导致无法访问容器。 最后,如果以上步骤都没有解决问题,可以尝试重新安装Docker并更新到最新版本。有时候旧版本的Docker可能会出现一些网络相关的问题,升级到最新版本可能会解决这些问题。同时也要确保宿主机操作系统和网络环境正常,并且网络连接和DNS设置正确。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值