[英]IIS 7 Bad Request response when %0A exists in the URL
我有一个应用程序,它应该接受来自Salesforce的不安全字符。 它们是%0A和%0D(到目前为止......)并且它们不起作用。
我将allowDoubleEscaping
设置为true
, requestValidationMode
为2.0
, requestPathInvalidCharacters
为BLANK
, relaxedUrlToFileSystemMapping
为true
, maxRequestLength
为1024
。
它没用。 然后我尝试将400的自定义错误设置为重定向到同一页面,而不传递Salesforce发送的数据。 也没工作。
然后我尝试通过IIS 7错误页面部分执行相同操作,但它仍然无法正常工作。
我怎样才能:
所有这些都在ASP.NET MVC 3应用程序中,但我怀疑这很重要,因为它可能会在它调用ASP.NET运行时之前阻止它。
我很感激一些帮助。 提前致谢!
您可能希望查看的位于IIS管理器中,单击您的服务器节点(或网站节点),找到“ Request Filtering
图标。 转到URL
选项卡,您可以在此处始终允许特定URL,或者更改一般处理URL过滤的方式。 我确信这些设置在web.config文件的部分下也是可用的,但是我不知道所有设置元素和属性是什么(我确信你可以进行搜索并轻松找到它们)。
修复此问题后,您可能必须通过ASP.NET。
也许这有点太晚了,但对我而言,它通过使用AllowRestrictedChars注册表设置更改配置的异常(如https://support.microsoft.com/en-us/kb/820129中所述 )。 默认值为0,我将其更改为1.如果非零,Http.sys接受请求URL中的十六进制转义字符,解码为U + 0000 - U + 001F和U + 007F - U + 009F范围。
检查您的URLScan配置。 http://learn.iis.net/page.aspx/476/common-urlscan-scenarios/
你碰巧在你的[DenyUrlSequences]部分中列出了这个吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.