Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 符号链接的主机文件被OS X忽略;开发域重定向到127.0.53.53_Macos_Dns_Osx Mavericks_Hosts_Icann - Fatal编程技术网

Macos 符号链接的主机文件被OS X忽略;开发域重定向到127.0.53.53

Macos 符号链接的主机文件被OS X忽略;开发域重定向到127.0.53.53,macos,dns,osx-mavericks,hosts,icann,Macos,Dns,Osx Mavericks,Hosts,Icann,我知道现在有很多领域都在提醒人们当前/将来可能发生的名字冲突 但是,我假设我的hosts文件中的任何条目,例如,使用.dev域在Vagrant上运行的开发站点,仍然会得到尊重并具有优先权 目前我在Mac(OSX 10.9.5)上遇到了这样的情况,大多数浏览器(Safari 7.1.2、Firefox 35、Chrome Canary)都试图连接到127.0.53.53。我能让它工作的唯一方法就是把TLD换成别的东西 奇怪的是,在我的主浏览器Chrome stable 39.0.2171.95中,

我知道现在有很多领域都在提醒人们当前/将来可能发生的名字冲突

但是,我假设我的hosts文件中的任何条目,例如,使用
.dev
域在Vagrant上运行的开发站点,仍然会得到尊重并具有优先权

目前我在Mac(OSX 10.9.5)上遇到了这样的情况,大多数浏览器(Safari 7.1.2、Firefox 35、Chrome Canary)都试图连接到127.0.53.53。我能让它工作的唯一方法就是把TLD换成别的东西

奇怪的是,在我的主浏览器Chrome stable 39.0.2171.95中,
.dev
宿主文件条目目前仍然可以加载

我尝试过各种方法,重新启动应用程序,重新启动虚拟机,简化主机文件/查找错误,刷新缓存–
dscacheutil-flushcache
等。使用其他TLD(或无TLD)的主机条目仍然可以正常工作


可修复/有什么我忘记的吗?

原因是我把我的/etc/hosts文件符号链接(到Dropbox),如果你想覆盖任何已经有有效DNS记录(ICANN的127.0.53.53是)的文件,那么你必须有一个普通的本地文件——如果该文件是符号链接,显然你不会先检查它


已验证删除符号链接可使其重新工作。但无法解释为什么Chrome有所不同。

这取决于苹果在osx中对dns解析程序做了什么,以及是否有特定的应用程序实际使用了该解析程序。看起来chrome有自己的浏览器,并且忽略了osx中正在执行的任何操作。@MarcB修复了它-my/etc/hosts是一个符号链接,而不是一个常规文件-显然,如果DNS查找没有解析,osx只会检查符号链接的版本。与此答案相同;我不得不在
/etc/hosts
重新创建一个文件,而不是在我的Dropbox中使用符号链接的文件。使在计算机之间同步主机文件变得更麻烦,但至少我的本地域再次正常工作。请将此标记为答案,这也是我问题的解决方法:)我想知道这是否纯粹是OSX问题,或者,如果这只是其他地方的情况。@geerlingguy-您可能想尝试一个
/etc/hosts.d
-在这个答案中指出的类型解决方案,您也可以使用硬链接而不是符号链接