IIS 8.5 强制不正确的 Content-Length 标头

Joh*_*ter 5 coldfusion windows-server-2012 iis-8

我们有一个动态生成 PDF 文件并强制下载文件的应用程序。这段代码在 Windows Server 2008 上运行没有问题。据我所知,IIS 将 Content-Length 强制设为 749,而它应该是 83233。我尝试在应用程序代码和 IIS 中设置该值完全忽略它。

  • Microsoft 的 URL Rewrite 已安装,但此站点没有条目
  • 我已禁用静态和动态内容的压缩
  • 通过应用程序代码,我尝试设置 Content-Length 标头并将 X-Content-Length 标头设置为相同的值。这就是我确定该值被 IIS 覆盖的方式
  • 当我通过 ColdFusion 的内置 Web 服务器访问相同的 URL 时,下载工作没有问题。这就是为什么我知道这是 IIS 或 IIS 与 ColdFusion 之间的连接器的问题。

这是来自服务器的响应头

Response Headers
-------------------------------------------------------------
Connection: close
Content-Length: 749
Content-Type    : application/pdf;charset=UTF-8
Date: Thu, 13 Nov 2014 03:36:03 GMT
Server: Microsoft-IIS/8.5
X-Content-Disposition: attachment;filename=LasVegas.pdf
X-Content-Length    :83233
X-Powered-By    :ASP.NET
Run Code Online (Sandbox Code Playgroud)