从请求中接收截断的javascript

时间:2013-01-25 16:12:52

标签: javascript html truncated

我正在http://yourworldclocks.juplo.com/的某个页面上工作。此页面加载/incl/tzs.js,其中定义initNames();函数并在文档就绪中调用。 FireBug说这个函数没有定义,但它在tzs.js

当我查看请求时,它返回465,6 KB,但服务器上的tzs.js为701.82 KB。我没有看到其他错误消息。

我以前从未见过那个bug。我已重置我的提供商的帐户并重新加载该网站,但我仍然遇到同样的问题。谁知道发生了什么?有任何想法吗?感谢。

P.S。:该网站在15分钟前运行良好。

2 个答案:

答案 0 :(得分:0)

重新启动Firefox使问题消失。不知道是什么造成的。

答案 1 :(得分:0)

遇到类似的行为并挖出来发现这是一个奇怪的HTTP标头。我在我的情况下使用nginx;不确定你在服务器上。 问题是,为了将gzip压缩定义到我的资源,我按如下方式启用了压缩 # gzip settings gzip on; gzip_min_length 900; gzip_buffers 4 32k; gzip_types application/x-javascript text/xml text/css application/json; gzip_vary on; # gzip settings end

这里重要的考虑因素是gzip_min_length 900;行。 这指示nginx如果内容大小小于900字节,则不压缩该资源。

在我的情况下,文件大小为506字节(小于900),因此nginx没有压缩它。但是,它发送了资源的Content-Length,好像 实际压缩了它(566字节)。 (是的,资源大小实际上在压缩时增加了。这对于较小的文件是可以预期的,这就是为什么首先有gzip_min_length指令的原因)

因此,为了解决这个问题,我只是将gzip_min_length的阈值降低到100.现在nginx压缩文件(稍微膨胀到566字节),并发送正确的Content-Length标头( 566字节)。

希望这有助于某人!