快速清除浏览器 DNS 缓存

我们在开发调试的时候经常遇到 host 变更 或者 dns 有变更的情况。但此时我们的浏览器中存在 DNS 缓存和未关闭的 sockets,使 dns 变更无法及时生效。本文推荐 chrome 的小插件可以帮助我们提高效率,免去等待时间。

安装插件

chrome 安装插件DNS Flusher for Chrome

或者 Flush DNS & close sockets

DNS Flusher for Chrome 点击清除并且刷新当前页面,或者,在浏览器输入 reload 然后 tab 按键之后再输入网址,就是清除DNS 后访问.

Flush DNS & close sockets 这个插件点击清除,但是不刷新.但是好处是可以用快捷键 ctrl + shrift + f 完成刷新

这两款插件,都需要指定 --enable-net-benchmarking 的情况下运行 chrome, 如果不知到如何指定请继续往下看

给 chrome 指定 --enable-net-benchmarking 参数运行

修改快捷方式

修改 chrome 的快捷方式, 在目标项后面添加--enable-net-benchmarking

这样,要求必须通过此快捷方式启动 chrome.

修改注册表

ctrl + r 运行 regedit,

找到HKEY_LOCAL_MACHINE–>SOFTWARE–>Classes–>ChromeHTML–>shell–>open–>command对应的配置,在其默认的值中添加 --enable-net-benchmarking

这个配置是为了让各种方式启动都能让配置生效

重启 chrome

配置后,我们需要关闭原浏览器。注意,如果开启了 google 的桌面通知等后台功能,仅仅是关闭浏览器窗口是无效的,必须完全退出进程才可以,通常检查任务栏通知区域确保无 chrome 图标。进一步可以检查进程管理。如果是锁定到任务栏的 chrome,需要先解除锁定.

然后我们使用配置了参数的快捷方式运行 chrome.

运行后,请打开 chrome://version/ 页面,确认其中”命令行”一段有 --enable-net-benchmarking,这样就表示配置成功了.

保证成功后,我们再在任务栏中选择当前浏览器,锁定到任务栏.之前的快捷方式可以选择删除了.

现在,使用插件测试下吧~

其他

关于 chrome DNS 缓存,可参考另一篇《关于 chrome DNS 缓存》

谢谢鼓励