[英]Special characters causes an error in URL in ASP.NET
我在 URL 中输入导致错误的特殊字符。 我想重定向一个特殊页面,但我做不到。
404 重定向工作正常,但 400 重定向不能正常工作。
这些字符会导致 url 出现问题:
1- "%" - HTTP Error 400 - Bad Request-Invalid URL
2- "&" - HTTP Error 400
3- "<" - HTTP Error 400
4- ">" - HTTP Error 400
5- ":" - HTTP Error 400
我的Web.config设置:
<system.web>
<customErrors mode="On" redirectMode="ResponseRedirect" />
</system.web>
<system.webServer>
<httpErrors>
<remove statusCode="400" subStatusCode="-1" />
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="400" path="400.aspx" responseMode="Redirect" />
<error statusCode="404" path="404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
As far as I know, the url Bad Request-Invalid URL is thrown by the http.sys not IIS or asp.net, so changing the custom error page is usless for this kind of issue.
此外,无法修改 http.sys 的自定义错误页面。
如果您想让 http.sys 允许 Invalid url,我建议您可以尝试在以下注册表项下创建以下 DWORD 值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
AllowRestrictedChars 1
更多细节,你可以参考这篇文章。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.