我们的 Webapp 网站有一个奇怪的问题,我们偶尔会从 Apple iPad Safari 中重新加载大量页面。
发生的情况是 Safari 打开与我们服务器的保持活动 HTTP 1.1 连接并向其发出 GET 流。这些请求彼此之间只能相距几十毫秒,而且 Safari 似乎在收到对先前请求的响应后立即重新加载页面。发送 4-5 个请求后,Safari 关闭套接字,打开新的,同样的事情重复几分钟,直到它突然停止。
检查的东西
- 仅发生在主页根 url /
- 页面在加载时没有 window.location.reload 调用可能会导致此问题
- 通过 tcpdump 和 wireshark 确认问题是真实存在的,并且发生在 iPad 设备和我们的服务器之间。(即 haproxy、我们的服务器或错误的日志记录没有问题)
- 问题似乎主要出在 iOS 4.3.3
- 我不能问用户,我们没有在本地用测试设备重复这个
- 所有问题请求都来自看似学校 VPN 网关的单个 IP,但来自不同的随机用户(基于 cookie,相同的用户可能会成功使用 webapp 天,直到问题重复出现)
有谁知道这里可能会发生什么?
- 代理损坏?
- iOS HomeScreen webapp 书签出了问题?
- DoS 尝试,虽然是蹩脚的
- 人们在使用我们的 web 应用程序时会变成僵尸,而不是 Brainsss 他们渴望 Reloadss?