在我的IIS7.5上的ASP MVC站点中,并设置了一个长maxUrlLength
以处理超过260个字符的网址。为此,我们还必须启用relaxedUrlToFileSystemMapping
。
所以我们在web.config中有这个:
<httpRuntime enableVersionHeader="false" maxUrlLength="1200"
relaxedUrlToFileSystemMapping="true"
requestPathInvalidCharacters="<,>,&,*,%,:,;,\,?,%" />
副作用是没有以空格和斜线结尾的网址现在有效。例如&#34; http://mysite.com/path/to/name /&#34;用于抛出我们捕获的HttpException
并发出301重定向。但现在却没有。
是否可以使此网址像以前一样?我能以某种方式在requestPathInvalidCharacters
列表中指定空格字符吗?放入requestPathInvalidCharacters=" "
对网址中的空格没有影响,requestPathInvalidCharacters =&#34;&amp;#32;&#34;也不会。并且requestPathInvalidCharacters="%20"
是配置错误。