通过端口转发通过主机名连接到Vagrant VM时超时

我想获得一个已经分发给我的Vagrant虚拟机设置(所以我没有自己configuration它)。 我已经成功安装了使用vagrant up虚拟机,但是当我尝试使用浏览器命中主机名时,我得到一个超时。 我也在我的主机文件中设置了主机名。

configurationVagrantfile:

 # Networking config.vm.network :private_network, ip: "192.168.33.28" config.vm.network :forwarded_port, guest: 80, host: 80, auto_correct: true config.vm.network :forwarded_port, guest: 443, host: 443, auto_correct: true config.vm.hostname = "mysite.local" 

在我的主机文件中行:

 192.168.33.28 mysite.local secure.mysite.local 

当我尝试浏览到http://mysite.local时,我得到一个超时。

我试图改变Vagrantfileconfiguration为:

 config.vm.network :forwarded_port, guest: 80, host: 8080, auto_correct: true 

然后运行vagrant reload 。 在这之后,我仍然得到http://mysite.local:8080的超时,但是我得到了http://localhost:8080的成功响应

谢谢!

首先,你不能绑定到1024以下的端口(在主机上)没有根/ sudo(你不应该以root身份运行Vagrant)。 我会假设你从那里得到一些错误/警告消息,但也许auto_correct只是绑定到一些非特权端口。

而且,因为您已经为机器指定了private_networknetworkingIP地址,所以甚至不需要任何端口转发。 直接连接应该工作。

对于超时我至less可以想到以下原因:

  • 来宾或主机上的防火墙
  • HTTP代理configuration不排除“mysite.local”或“192.168.33.28”
  • Web服务器将http://mysite.local URLredirect到不可访问的域
  • 192.168.33.28被另一台虚拟机使用,或与主机上的其他networking重叠