MacOSX 10.13下/etc/hosts在浏览器中无效是什么原因

新的机器系统版本是10.13.2
想搭建个本地web站点,之前直接用root权限修改/etc/hosts文件 浏览器直接就生效了。
现在修改完一直不生效是什么原因,是不是新的系统有什么地方没打开?
首先是看设置

ping一下没问题
图片描述
curl也是我的网站
图片描述

But用chrome和Safair无论是清DNS缓存还是用隐身模式还是重启都是打开国外的那个正确的网站,这是什么原因
图片描述
图片描述

真是要崩溃了。。。。

阅读 5.1k
2 个回答

当我们本地浏览器发送一个请求后如果本地配置了代理那么这个请求可能会被代理软件捕获然后发送到代理服务器。所以你的本地host文件的修改就没有任何的意义。解决的思路是这个请求不走代理,或者代理并不会转发你本地局域网的请求。可以尝试关掉代理或者把代理的配置设置成“绕过局域网”。这里还有说明一点,操作系统是有DNS和路由表缓存的。当关闭代理或者更改配置后有可能结果并没有改变。所以还要清除一下DNS和路由表缓存。具体的清除方法因操作系统而异。

  1. 新开一个隐藏窗口
  2. 在隐身窗口 访问 cars.com 》》外国网站
  3. 修改host文件
  4. 在正常窗口(此前没有访问过cars.com这个站点) 》》本地站点
  5. 关闭隐身窗口,再打开一个隐身窗口 访问 cars.com 》》外国站点
  6. 清除缓存后,隐身模式窗口访问 cars.com 》》外国站点

由此可以猜测应该是浏览器的某个机制的问题导致了这个问题

解决方法:可以试一下完全退出浏览器程序后再重新打开访问

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题