所以,我不确定这里的问题是什么,但我怀疑可能是服务器的问题。以下是一些关键细节
- Amazon EC2 服务器(均位于同一区域和地区)
- Ubuntu 12.04 服务器
- Apache2 对所有相关文件扩展名进行 gzip 压缩
- 从连接的 NFSv4 挂载提供文件
- 使用 XMLHttpRequest 发出请求。回调位于 request.onload 中
因此问题完全相同的 GET 请求文件有时可用,有时不可用。也可能是一些奇怪的本地浏览器缓存问题,但我想排除服务器可能有故障。
当我使用 Chrome 控制台检查时,我基本上得到了这
如您所见,文件大小会随机不同,这让我相信它只是部分加载文件或由于某种原因仅提供部分文件。
回调是否应该改为 request.onloadend?
服务器是否可能对文件进行分块(我强制请求为 HTTP/1.0,所以它不应该)
很难调试。
答案1
最有可能是 apache 或 php 的问题。我曾经通过这个主题的帮助解决了这个问题:https://stackoverflow.com/questions/12456285/chrome-loads-a-text-html-file-but-shows-status-failed-and-does-not-render-on-s