我对Ruby on Rails还很陌生,所以当我试图学习官方的"Getting Started"ruby on rails教程时,我有点失望,因为它很快就出了问题.基本上它说:

…导航到http://localhost:3000.您应该看到Rails的默认信息页面.

但是当我按照指示go 做的时候

=> Rails 2.3.4 application starting on http://0.0.0.0:3000

在try 了两个地址之后,我知道它们指向同一个东西,但是有人能向我解释为什么Ruby on Rails使用http://0.0.0.0:3000而不是http://localhost:3000吗?

有没有办法让WEBrick服务器始终使用localhost?

推荐答案

Localhost的字面意思是"您的本地主机",通常由127.0.0.1标识,所有到该地址的流量都通过环回接口路由.如果您的Web服务器正在监听127.0.0.1上的连接,这意味着它只接受来自同一主机的请求.

0.0.0.0意味着Rails正在监听all个接口,而不仅仅是环回接口.

Ruby-on-rails相关问答推荐

Ruby线程使用互斥处理并发问题

在Ruby on Rails中获取堆栈级别太深错误(&Q)

关于关联 has_many 的多级/三重嵌套形式

Rails ActiveRecord::LogSubscriber 不输出详细查询日志(log)

刺激不添加侦听器以搜索表单输入

Rails 控制台 - 更新 Gem 后的弃用通知

ArgumentError:您需要使用 :if 提供至少一个验证

如何在两个日期之间生成随机日期和时间?

基于 2 列定义唯一主键

Rails 将 form_for 对象传递给部分

Rails 在关联模型中排序

如何找出现有 Rails 应用程序基于哪个 Rails 版本?

如何让空白复选框作为假传递给参数

连接表的最佳 SQL 索引

我可以在 twitter-bootstrap popover 数据内容中使用 html 标签吗?

Rails:一次添加多个 flash[:notice] 的简单方法

rake 任务中的 def 块

Rails:在 link_to 中保留 GET 查询字符串参数

Rails:如何将日期时间字符串解析为特定时区

是否可以输出rake db:migrate产生的 SQL 更改脚本?