我一直在进行测试以解决相关问题,以便能够尽可能准确地描述。首先,让我与您分享问题的概述,然后我会列出测试列表和结果。
有些网站突然打不开!比如 Yahoo 邮箱(yahoo.com
不过可以打开)、support.hostgator.com
(Hostgator 仍然可以打开)、Namecheap 实时聊天支持页面(可以打开网站上的大多数页面)等等。无法打开的意思是,我得到ERR_EMPTY_RESPONSE
,或者一直在加载。
以下测试在一台机器上运行,称之为A,运行 Ubuntu 18.04.2。
机器A:Linux Ubuntu 18.04.2
- 无法在 Chrome(版本 74.0.3729.108(官方版本)(64 位))上加载任何有缺陷的页面。
- 清除了该网站的缓存(打开“开发人员工具>应用程序>清除存储>清除网站数据”)但仍然无法打开这些网站。
- 尝试在隐身窗口中打开页面(所有扩展均已禁用)。没有成功。
- 尝试在 Firefox 中打开。没有成功。
- 尝试在 Firefox 私人窗口中打开。HTML 文件已加载,但没有 CSS 或 JavaScript。
- 尝试在 Tor 浏览器中打开。运行正常。
- 重启路由器。运行上述相同的测试。结果相同。
- 已将 WiFi 网络更改为连接到另一个热点(移动数据)。页面加载成功。
机器B:Linux Ubuntu 18.04.2
我在另一台机器上运行了同样的测试,称之为乙,运行 Ubuntu 18.04.2(与 A 一样)。结果相同。
计算机C:Windows 8.1
我在另一台机器上运行了同样的测试,称之为C,运行 Windows 8.1。页面加载成功。无需在隐身窗口中打开。
机器D:Android手机
这里的行为有点不同。支持页面已成功加载。但无法打开 Yahoo 邮件。当我切换到移动数据时,我可以访问 Yahoo 邮件。
现在发生了什么?所有设备上的行为不一致!
更新 1
在机器 A 上又进行了一次测试。我针对 Yyahoo 邮件页面进行了 Curl 并且成功收到了数据。curl 可以工作而 chrome 不可以?
curl -v --request GET --user-agent 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.108 Safari/537.36' 'https://login.yahoo.com/?.src=ym&.partner=none&.lang=ar-JO&.intl=xa&.done=https%3A%2F%2Fmail.yahoo.com%2Fd%3F.intl%3Dxa%26.lang%3Dar-JO%26.partner%3Dnone%26.src%3Dfp'
更新 2
我能够在 Firefox 常规窗口(而非私人窗口)中加载登录页面。但是,我无法做太多其他事情。也就是说,在提供用户名并点击下一步后,请求超时。
我从机器 A 复制了 curl 命令并运行它,但收到了空响应!
curl:(52)来自服务器的空回复。
我修改了请求头并删除了 cookies 部分,并且成功收到了响应!
这说明什么?
更新 3
行为变得更加一致。出于某种原因,无法访问的页面在所有 Linux 机器甚至 Android 手机和平板电脑上都无法访问。在 Windows 上运行的 Chrome 上可以访问页面!
答案1
我找到解决问题的方法了!
它正在更改我的网络模块的 MTU。MTU 是最大传输单元,它决定了从一个主机到另一个主机的链路上传输的每个数据包的最大大小。
我之前使用的是 1500。更改为 1400。方法如下:
ifconfig <dev> mtu 1400
来源。
答案2
我遇到了类似的问题
在 KDE Neon 20 上,我无法加载 gitlab.com 和极少数其他网站。
同一网络上的其他计算机打开相同的网站没有问题。
计算机上的其他网络打开相同的网站没有问题。
在尝试了包括接受的答案在内的各种解决方案后,没有任何效果。然后我从连接设置中删除了无线网络(与忘记网络相同)。然后再次重新连接并开始工作。现在它可以无缝打开 gitlab.com 和其他网站。
我不知道发生了什么,但是此方法有效。
因此首先尝试这样做,因为它不会造成任何伤害。我敦促社区解释一下为什么删除网络是有效的。