Ruby on rails 从Windows访问运行在Vagrant box上的rails服务器

Ruby on rails 从Windows访问运行在Vagrant box上的rails服务器,ruby-on-rails,windows,vagrant,Ruby On Rails,Windows,Vagrant,我在一台Windows机器上,有一个运行着ubuntu/xenial64的流浪者盒子,上面安装了Rails。当我用ssh连接到盒子中并创建一个rails应用程序时,cd进入文件夹并运行rails服务器,它告诉我 Rails 5.1.2应用程序在上开始开发 倾听tcp://0.0.0.0:3000 我现在想在我的Windows计算机上访问localhost:3000,但它说找不到。如何使rails服务器可用于Windows?我正在为我的rails应用程序使用VirtualBox(运行Ubuntu

我在一台Windows机器上,有一个运行着ubuntu/xenial64的流浪者盒子,上面安装了Rails。当我用ssh连接到盒子中并创建一个rails应用程序时,
cd
进入文件夹并运行
rails服务器
,它告诉我

Rails 5.1.2应用程序在上开始开发

倾听tcp://0.0.0.0:3000

我现在想在我的Windows计算机上访问
localhost:3000
,但它说找不到。如何使rails服务器可用于Windows?

我正在为我的rails应用程序使用VirtualBox(运行Ubuntu 14)。我已经做了以下更改,以访问Windows计算机上的localhost

步骤1

  • 转到设置->网络,将NAT适配器更改为桥接适配器。也可以在网络->预先检查允许所有的混乱模式
  • 重新启动VM/box
步骤2

  • 现在按照您的过程进行操作,直到运行
    rails服务器
    命令为止。只需将命令修改到此
    rails服务器-b0.0.0.0
    ,然后等待服务器启动

  • 获取您的邮箱的IP地址(运行ifconfig),现在在您的Windows中打开任何浏览器,并将URL作为您邮箱的IP地址:3000

    例如:


您需要确保已将端口3000从VM转发到主机,请在文件中添加此行

config.vm.network "forwarded_port", guest: 3000, host: 3000
这样,您就可以在Windows计算机上从
localhost:3000
访问rails应用程序


正如其他人所说,最好使用
rails server-b0.0.0
启动rails服务器,因此它绑定到所有网络接口

您需要使用IP地址访问,也需要使用
rails s s-b0.0.0.0启动服务器
我尝试过从
rails-b0.0.0
开始,也尝试过使用
127.0.0.1:3000
访问,仍然是“未找到”。否,在vagrant框中检查终端的IP地址在终端上运行此操作
ifconfig