mka*_*erg 15 networking mac dns google-chrome hosts-file
我们的开发人员使用 Docker 或 VirtualBox(使用 Vagrant)在本地测试他们的代码(并且两者都会出现问题)。为方便起见,我们修改 /etc/hosts 以指向正确的 IP 地址。例如,
local.test.company.com 10.200.10.1
Run Code Online (Sandbox Code Playgroud)
我们的一些开发人员使用 Linux,一些开发人员使用 macOS Sierra (10.12.3)。在 Mac 上,Chrome(和其他浏览器)中对 local.test.company.com 的请求通常需要很长时间(最多一分钟或更长时间)才能解决。(该问题在 Ubuntu Linux 上不会发生。)在此期间,选项卡上的“加载图标”是向左旋转的灰色图标。一旦它变为向右旋转的蓝色图标,它就会很快完成。对于在开发过程中经常刷新站点的开发人员来说,缓慢的加载时间可能是一个真正的问题。
基于这个问题,Chrome 似乎需要整整一分钟来解析该站点。这对我来说没有意义 - /etc/hosts 中的站点应该立即解析。一些开发人员可以非常一致地重现这种行为。其他人断断续续地看到它或根本看不到它,我一直无法弄清楚为什么。
为什么对 local.test.company.com 的请求需要很长时间才能在 Web 浏览器中解析?
或者,我能做些什么来“调试”这个问题并找出需要这么长时间的原因?
补充说明
小智 17
我在 macOS High Sierra (10.13.3) 上的 Chrome 64.0.3282.167 中遇到了同样的问题,这个 StackOverflow 答案为我解决了这个问题:
引用:
将 localhost 的所有主机文件条目放入一行,如下所示:
Run Code Online (Sandbox Code Playgroud)127.0.0.1 localhost myproject.dev myotherproject.dev ::1 localhost
我最终明白了这一点。事实证明,当圆圈向左旋转时,Chrome不一定会解析。chrome 上的圆圈在数据上传期间向左旋转,在数据下载期间向右旋转。
我通过调试在 Chrome 中运行的 PHP 应用程序解决了这个问题。PHP 响应来自 Chrome 的请求,Chrome 中的圆圈继续向左旋转,直到printPHP 中的第一个语句。也就是说,直到服务器将第一个字节的数据发送回客户端。
所以,综上所述,这根本不是DNS解析的问题。DNS 很好,我们的 Web 应用程序根本没有像我们想象的那样快地发送回任何数据(由于在调试器中暂停或由于其他原因)。
| 归档时间: |
|
| 查看次数: |
4387 次 |
| 最近记录: |