本文出处:http://blog.csdn.net/chaijunkun/article/details/53690305,转载请注明。由于本人不定期会整理相关博文,会对相应内容作出完善。因此强烈建议在原始出处查看此文。
笔者平时做一些web项目,在开发时非常喜欢使用Chrome浏览器。启动速度快、对CSS、JS标准化的支持和方便的F12工具成为了不二的调试工具。
我的开发方案是将各个不同的环境设置为不同的域名,如下表所示:
环境名称 | 主机地址 | 域名 |
---|---|---|
本地调试 | 127.0.0.1 | test.biz.domain.com |
测试机联调 | 10.168.10.24 | test.biz.domain.com |
线上环境 | DNS解析 | biz.domain.com |
这种方案经常带来的问题:当我手动修改c:\windows\system32\drivers\etc\hosts或者/etc/hosts,尝试切换本地调试和测试机联调环境时经常出现Chrome无法立即生效的情况,请求会依旧打到之前的环境中。当然早期有一种土办法:重启Chrome。如果你当前浏览器中打开了好多网页,而且都暂时不能关时,你会很抓狂。后来通过查阅资料,只需要对Chrome相关的缓存清除掉即可,百试不爽:
在Chrome中打开地址:
chrome://net-internals/#sockets
看到类似如下界面:
分别点击第一个Close idle sockets(关闭空闲套接字)和第二个Flush socket pools(清空套接字池)
在Chrome中打开如下地址:
chrome://net-internals/#dns
看到类似如下界面:
点击Clear host cache(清除主机缓存)。此时再次刷新想要调试的页面,请求将按照最新的hosts配置进行发送。