新设置的 Apache 服务器为 .png 和 .swf 提供了错误的 Content-Length 标头

新设置的 Apache 服务器为 .png 和 .swf 提供了错误的 Content-Length 标头

也许我缺少一些必要的模块或配置。几天前设置了这个服务器,Apache 2,Ubuntu 10.04。在上面放了一个网站。访问该网站,注意 .png 图像的底部边缘被切掉了。另外,最后一点 flash 动画似乎没有运行。

服务器文件系统上的文件看起来完好无损——如果我通过 SCP 抓取文件,.png 的底部边缘看起来没有被切掉。但在浏览器中或使用 wget 抓取时,它们会被切掉。

与另一台服务器上提供的相同文件相比,我注意到在 .png 和 .swf 文件中,新服务器在 Content-Length 标头中发送的数字略小。我猜想这就是问题所在,但不知道是什么原因导致的,也不知道该如何处理。

答案1

来自评论

好了,各位,这就是问题所在……显然这些文件是通过 Rails 应用程序通过 Metal 提供的(出于某些我不完全理解的原因,该应用程序的出现时间远远早于我的参与)。Content-Lengths 的差异是由于服务器上的 Ruby 版本为 1.8.7(实际上是 REE),它工作正常,而新服务器上的版本为 1.9,并且这个 Metal 程序根据文件内容上调用的 #length 返回的值设置 Content-Length

相关内容