在过去的两个月中,我在Chrome的开发人员控制台上收到以下错误:
net::ERR_INCOMPLETE_CHUNKED_ENCODING
症状:
- 页面未加载。
- 截断的CSS和JS文件。
- 页面挂起。
服务器环境:
- 阿帕奇2.2.22
- 的PHP
- 的Ubuntu
这是在我们内部的Apache服务器上发生的。这对其他任何人都没有发生-即我们的用户都没有遇到此问题-我们的开发团队中也没有其他人。
其他人正在使用完全相同版本的Chrome访问完全相同的服务器。我还尝试了禁用所有扩展名并以隐身模式浏览-无效。
我使用了Firefox,并且发生了完全相同的事情。截断的文件等等。唯一的是,Firefox不会引发任何控制台错误,因此您需要通过Firebug检查HTTP请求以查看问题。
来自Apache的响应头:
Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection:close
Content-Encoding:gzip
Content-Type:text/html; charset=utf-8
Date:Mon, 27 Apr 2015 10:52:52 GMT
Expires:Thu, 19 Nov 1981 08:52:00 GMT
Pragma:no-cache
Server:Apache/2.2.22 (Ubuntu)
Transfer-Encoding:chunked
Vary:Accept-Encoding
X-Powered-By:PHP/5.3.10-1ubuntu3.8
在测试期间,我可以通过在htaccess文件中强制使用HTTP 1.0来解决此问题:
SetEnv downgrade-1.0
这摆脱了问题。但是,在HTTP 1.1上强制HTTP 1.0是不合适的解决方案。
更新:因为我是唯一遇到此问题的人,所以我认为我需要花更多的时间调查这是否是客户端问题。如果我进入Chrome的设置并使用“还原为默认值”选项,该问题将消失约10-20分钟。然后返回。
while($row = mysql_fetch_assoc($result))
可能是太多的空行,从而导致Web浏览器被截断