我是新来的,正在开发一个Rails应用程序,该应用程序是交给我的一个研究项目。
我已经创建了自己的项目实例,并且我能够从我的计算机访问运行该实例的服务器,但是,只有当我修改我的主机文件并将 IP 地址映射到任意域名时。
如果我尝试通过 IP 地址访问 rails 服务器,则会收到以下错误:
"路由错误
没有路由匹配 [GET] "/" 尝试运行耙子路线以获取有关可用路线的更多信息。
所以我的问题是,如何将 Rails 服务器和应用程序配置为只能通过 IP 地址访问,例如:http://52.78.233.65:3000/,如果我修改主机文件但不直接访问站点,为什么服务器会工作?
如果您需要远程访问,可以选择以下方法之一:
-
每次开始申请
- 通过附加 -b 0.0.0.0 来启动 rails 服务器,因此启动 rails 服务器的命令是:rails s -b 52.78.233.65(来自您的示例 IP(
-
更改默认绑定选项
- 通过添加以下代码修改 config/boot.rb 并使用普通命令轨道启动 rails 服务器
config/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