通过IP地址访问时Rails服务器路由错误

时间:2017-07-21 15:20:34

标签: ruby-on-rails ruby

我是新来的,正在处理一个Rails应用程序,该应用程序已交给我进行研究项目。

我已经创建了自己的项目实例,并且我能够从我的计算机访问运行该实例的服务器,但是,只有当我修改我的主机文件并将IP地址映射到任意域名时才能访问。

如果我尝试通过IP地址访问rails服务器,则会收到以下错误:

“路由错误

没有路线匹配[GET]“/” 尝试运行rake路线以获取有关可用路线的更多信息。“

所以我的问题是,我如何配置Rails服务器和应用程序只能通过IP地址访问,例如:http://52.78.233.65:3000/,以及为什么服务器在我修改hosts文件但不访问网站直接?

1 个答案:

答案 0 :(得分:0)

如果您需要远程访问,可以选择以下方法之一:

  • 在每次开始时申请

    • 通过附加-b 0.0.0.0启动rails服务器,因此启动rails服务器的命令是: rails s -b 52.78.233.65 (来自您的示例IP)
  • 更改默认绑定选项

    • 通过添加以下代码修改config / boot.rb并使用普通命令rails s
    • 启动rails服务器

配置/的boot.rb

require 'rubygems'  
require 'rails/commands/server'
module Rails  
  class Server
    alias :default_options_bk :default_options
    def default_options
      default_options_bk.merge!(Host: '0.0.0.0')
    end
  end
end