未解之谜级别问题, IIS 上无法识别带 @ 的参数,@转译后是 %40?
2016-04-06 来自:虚无的影子 1 人回应

运行环境 win2003  IIS6.0  .net framework 4.0

在一个静态页面 后面加上参数 %40 后,直接返回 无法找到该页 的错误,服务器日志里面没有这个访问的错误日志生成,换一台服务器就正常了,其他第三方因素均测试排除了,应该是服务器里面设置造成的

http://5.iaviva.com/index.html?a=%40

2016-04-06 来自:七分醒 -

1、在地址栏输入: %windir%\system32\inetsrv\config\applicationhost.config然后单击 打开。
2、在 ApplicationHost.config 文件, 定位到文件中的 configuration/system.webServer/security/requestFiltering/下 <requestFiltering> 节点。
大约360行将<requestFiltering> 改为 <requestFiltering allowDoubleEscaping="true"> 即可。
3、或在网站的web.config里修改或添加该节点,也是可以的。
例如代码示例:
<configuration>
<system.webServer>
<security>
<requestFiltering allowDoubleEscaping="true"></requestFiltering>
</security>
</system.webServer>
</configuration>

您的回应

你还未登陆,不能回应!登陆