IIS 7.5:在响应中强制保持活动标头

Mit*_*h A 7 .net iis keep-alive

根据我的研究,IIS 7.5不包括连接:保持活动中其描述响应的原因在这里.不幸的是,我有一个不符合要求的客户端连接到我的Web服务,它不会重用套接字,除非它在响应头中看到Connection:Keep-Alive.我已尝试以编程方式添加此标头但IIS似乎故意将其删除.有没有其他方法可以强制将此标题发送回我顽皮的客户端?

Mit*_*h A 9

我在这方面与微软公开了一张支持票,并确认了我最大的疑虑.IIS 7.5故意阻止连接:在响应中返回keep-alive标头.根据HTTP 1.1 RFC,所有连接都应该保持活动状态(偏离HTTP 1.0).因此,省略此标头是默认和正确的(?)行为.如果希望使用keep-alives ,IIS将发送连接:close标头.

令我感到惊讶的是,IIS将竭尽全力防止此标头被发送.无论如何添加,IIS管道中的某些内容都会删除此标头.(我的MVC应用程序中的C#代码,IIS管理器 - > HTTP响应标头,IIS管理器 - > URL重写模块).

你会认为MS会允许某种类型的逃逸阀,因为在野外存在许多不符合要求的HTTP 1.1客户端,除非他们看到这个标题,否则它们将无法运行.