为什么修改Host不生效

Posted Mr.yang.localhost

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么修改Host不生效相关的知识,希望对你有一定的参考价值。

开发验证的好好的功能,提测后经常有测试反应功能有bug。很多原因都是测试切换host没生效造成的,为什么切换host后刷新页面了也没生效呢?

不生效原因:

  • Keep-Alive

           服务器在响应头设置了 Connection: keep-alive (一般的网页都会设置 keep-alive,保持长连接,避免多次连接产生网络消耗)之后,客户端会跟服务器保持长连接,只要长连接不断开,页面在请求的时候就不会重新解析域名!(Chrome输入chrome://net-internals/#sockets 可以看到保持的长连接,点击按钮 close idle sockets 可以关闭所有的长连接。)

  • 存在浏览器 DNS 缓存
  • 系统 DNS 缓存

让修改生效:

  •  重启浏览器

                   重启浏览器之后,所有的连接(包括长连接)都会断开,自然就生效了

  •  隐私模式打开

                因为隐私模式下不会复用 TCP 连接,新开连接的时候,会重新解析 DNS 域名

  •  修改后过一会儿

                长连接失效,时间不确定,开发者可设置

 

附录:Chrome浏览器的工具命令,浏览器输入 chrome://about/

以上是关于为什么修改Host不生效的主要内容,如果未能解决你的问题,请参考以下文章

win 10 hosts文件不生效

修改crontab 不重启服务能生效吗

修改hosts不立即生效原因分析

php为啥更改了配置文件不生效

linux修改了JAVA_HOME环境变量不生效?

eclipse修改代码不生效