【问题标题】:Hosts file ignored Mac 10.11.4 El Capitan主机文件被忽略 Mac 10.11.4 El Capitan
【发布时间】:2016-04-27 08:11:49
【问题描述】:

我正在本地运行 RoR 应用程序。我的 hosts 文件中有一些翻译。

127.0.0.1   localhost
127.0.0.1   example.dev
127.0.0.1   www.example.dev
127.0.0.1   api.example.dev

在我将操作系统更新到 10.11.4 之前,它们运行良好。如果我将ping 请求发送到www.example.dev,它似乎工作正常。它翻译成的IP是127.0.0.1

但是当我在网络浏览器中访问 www.example.dev 时,它似乎忽略了 hosts 文件并 ping DNS 服务器以获取 IP。

我不确定如何,但在浏览器中转到 localhost 确实会转换为 127.0.0.1

【问题讨论】:

  • 请问RoR 是什么?
  • 对不起@MarkSetchell 它的 Ruby on Rails 服务器。
  • 这里也有同样的问题。我刚买了我的 mac air,对主机文件的自定义似乎被忽略了。

标签: macos hosts


【解决方案1】:

不知道为什么,但我禁用了我的回溯适配器和 ipv6,现在它可以工作了。

所以在你的主机文件中禁用这两项

# ::1               localhost  
# fe80::1%lo0       localhost

一些 fubar osx 错误...我想念史蒂夫....

【讨论】:

  • 如何禁用loop返回接口?
  • 这是我尝试过的(在你回答之前),它对我有用。所以将其标记为可能的解决方案。
  • 哇哇。这为我解决了问题。
  • 有趣。直到最近它才为我工作。我使用 StevenBlack 主机文件。我只需要注释掉 ipv6 环回,但是是的,这肯定修复了它。
  • 只是评论 ::1 也对我有用......太棒了
【解决方案2】:

我在寻找类似问题的答案时遇到了这个问题,并想将我的发现发布给处于相同位置的其他人。

作为一个三人小组,我们发现编辑我的 /etc/hosts 文件似乎有效,而编辑其他两个主机文件似乎没有。经过进一步挖掘,我们意识到我使用的是 OS X 10.10,而他们使用的是更新版本。

在尝试了大约一百万件事之后,我们发现在 10.11 及更高版本中添加到 hosts 文件中的 IP 和域之间显然不能超过一个空格,例如:

没有工作:

1.2.3.4     some.site.com

成功了:

1.2.3.4 some.site.com

进行此更改后,我们立即开始看到预期的结果,无需任何缓存清除、重新启动或其他方式。

【讨论】:

  • 经过一个小时的调试,我删除了多余的空格,它工作了。谢谢!
  • 对我(未来)来说,这似乎并不重要。
【解决方案3】:

您要覆盖的主机正在通过 IPV6 解析。
::1 是 IPV6 的环回地址,类似于 IPV4 中的 127.0.0.1。在 /etc/hosts 文件中添加以下条目作为最后一行。

::1 本地主机
::1 www.example.dev

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-15
    • 2016-07-24
    • 2016-11-03
    • 2017-04-15
    • 1970-01-01
    • 2017-01-03
    相关资源
    最近更新 更多