我有一个在端口9876上运行的HTTP服务器。
我放入http://127.0.0.1:9876/
Chrome浏览器后,页面即刻加载。
我安装http://localhost:9876/
了Chrome,该页面再也无法加载。
我从未修改过C:\ Windows \ System32 \ drivers \ etc \ hosts。
主机文件中的每一行都被注释掉。
文件中存在以下几行,可能与之相关:
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
正如我所说,我自己还没有添加这些行。我尚未编辑主机文件。
显然,我可以取消第二行的注释以使localhost运行。但是,如果第一行是正确的,为什么这是必要的呢?微软是否写第一行?看来他们是在告诉我localhost无需定义即可工作。
我找不到可靠的文档,但是自Windows 7以来,它们将localhost解析度更改为DNS。我猜想在进行操作时,DNS客户端服务实际上会退回本地主机,因为无论您的DNS服务器在哪里,它都可能无法解析本地主机。您始终可以设置主机文件,并且它可以覆盖DNS客户端为您提供的内容。
这至少证明它自Windows 7起就发生了变化:
http://support.microsoft.com/kb/972034
我假设它是DNS服务,因为在Win8框中,这些行已注释,但是localhost解析为:: 1,当然我的DNS未配置为IPv6,即使配置了,也不会解析本地主机。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句