IIS7不是一个坏的请求返回HTTP 400(IIS7 NOT returning HTTP 400

2019-09-26 19:07发布

我有我们执行了大量的集成测试的MVC2网站。 最显著,我们使用的所有不良网址测试时的行为。 例如:

HTTP:// XXXX / V1 // Dy888 /1234567815分之1/ swlocation FV = 24&SV2 = 3&SV3 = 5

(注“V1”后的两条斜线。)

这应该产生一个HTTP 400错误的请求,并在开发环境(VS2008)一切工作按计划进行。 但在测试环境IIS7或MVC2莫名其妙地看到通过这个和响应好像有只有一个斜线。 这似乎是太“聪明”,并通过重写请求帮助我们。

我如何配置我的服务器不“智能”,并真正与正确的错误回应?

该测试服务器的Windows Server 2008 IIS7。

谢谢! - 尼克拉斯

Answer 1:

的HTTP状态代码400被定义如下:

请求有语法错误或者是本来就不可能得到满足。

具有在URI(这是只有该请求作为一个整体的一部分)一个额外的正斜杠不能正确地被归类为所述请求的语法错误,并且也不会使得不可能满足该请求,由于额外的正斜杠不改变由URI指向的位置。

我认为,你的开发Web服务器是一个错误,并且为您的测试的前提是错误的行为。



文章来源: IIS7 NOT returning HTTP 400 for a bad request