我的本地主机上有两个站点,/etc/hosts 文件中的 mysite1.local 和 mysite2.local 指向我的本地主机。现在,我将这些站点移至我的家庭服务器(Ubuntu,本地网络)并对 hosts 文件进行了更改,/private/etc/hosts 中也一样。这些文件具有 644 个权限。
192.168.0.50 mysite1.local
192.168.0.50 mysite2.local
我刷新了我的 dnscache
sudo dscacheutil -flushcache
我重新启动了机器,重置了 Safari,但仍然没有变化。如果我尝试访问 mysite1.local 或 mysite2.local,它仍然指向 localhost!
当我跑步时
dscacheutil -q host -a name mysite1.local
它返回name: mysite1.local ip_address: 127.0.0.1
两次,如果我对 mysite2.local 执行相同操作,它name: mysite2.local ip_address: 127.0.0.1
只会返回一次。
可能是什么问题呢?
操作系统是 Snow Leopard 10.6.8
答案1
深入了解 Snow Leo 中的 DNS 是这里
我最好的猜测是,您在 /etc/resolver 中有一个缓存的 .local 域平面文件,该文件未正确刷新/刷新。顺便问一下,您使用的是系统的 apache 吗?您在哪里进行了本地虚拟主机更改,以指向相应的站点文件?.local 始终是一个麻烦的域,因为它与 Bonjour 协议的默认/预期命名空间重叠,并且(如上文所述),所有解析都经过同一个守护进程。