vagrant 端口转发无法正常工作,没有任何错误

vagrant 端口转发无法正常工作,没有任何错误

我正在尝试将我的项目设置到虚拟机中,以便我可以从主机上使用它。我在 vagrantfile 中设置了端口转发,当我运行“vagrant up”时,一切正常,没有错误。但是当我尝试从主机访问 VM 中的应用程序时,却无法访问。我的 vagrant 文件非常简单:

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure("2") do |config|
  config.vm.box = "hashicorp/precise32"
  config.vm.network :forwarded_port, host: 4567, guest: 8001
  config.vm.synced_folder "data", "/home/vagrant/projects/myapp/"

end

开始时我得到了这个:

==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 8001 => 4567 (adapter 1)
    default: 22 => 2222 (adapter 1)

看起来一切正常,但当我尝试从主机访问 127.0.0.1:4567 时(我在 127.0.0.1:8001 上的客户机上运行我的应用程序),我ERR_EMPTY_RESPONSE在浏览器中收到 err_code。我做错了什么?

答案1

首先,如果事实并非如此,我很抱歉,我没有评论的声誉。

也许你的服务正在监听127.0.0.1当它应该倾听时0.0.0.0您可以在客户机上运行以下命令来检查它:

netstat -lnptu | grep ':8001'

在第四列你应该得到0.0.0.0:8001。如果不是,请在您正在运行的服务上查找绑定选项。

PS:如果是 Sinatra 服务器(我根据主机端口号猜测),请查看:绑定关于这个话题

相关内容