MacOS 修改 hosts 的方法和 hosts 不生效的常见原因及解决方法

MacOS 修改 hosts 的方法和 hosts 不生效的常见原因及解决方法

1. 修改 hosts 的方法

1.1 终端命令行修改

  1. 打开终端 terminal,输入以下命令
    sudo vim /etc/hosts
    
  2. 输入密码后,就可以显示 hosts 文件内容
  3. 键盘按【 i 】键(插入),修改hosts文件后,按 【 esc 】 键退出,再按【 ⇧ 】+【 : 】键,再输入【 w 】和【 q 】,保存退出

    详细vim操作可参考vim操作手册

1.2 直接修改系统 hosts 文件

  1. 点击 「访达」->「前往」->「前往文件夹」,或者打开finder,按组合键【 ⇧ 】+【 ⌘ 】+【 G 】调出弹窗,输入/etc/hosts,确认前往
  2. 进入文件夹后,复制该文件到桌面,修改成功后保存,并替换掉原先的host文件即可

1.3 使用 hosts 管理工具修改

如:SwitchHosts/iHosts/Gas Mask 等 Hosts 管理工具

2. 不生效的原因分析及解决方法

2.1 终端 ping 域名时显示还是原ip

  1. 文件格式不对:检查文件名是否有后缀(.txt等)、文件内容是否存在特殊字符(重点检查ip和域名之间是否有不可见特殊字符)等

2.2 浏览器访问域名时还是访问原ip

  1. 服务器请求头设置了keep-alive:一般的网页都会设置 keep-alive,客户端会跟服务器保持长连接,避免多次连接产生网络消耗,只要长连接不断开,页面在请求的时候就不会重新解析域名。因此可以尝试:1. 重启浏览器;2. 打开隐私模式;3. 等待keep-alive失效
  2. 浏览器存在DNS缓存:需要手动清除浏览器缓存,以chrome为例:在搜索栏输入chrome://net-internals/#dns,点击clear host cache即可
  3. 系统存在DNS缓存:需要手动清除系统缓存,以MacOS为例:在终端输入以下命令即可(参考:Reset the DNS cache in OS X
    sudo killall -HUP mDNSResponder
    
  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值