我在asp.net 2.0 网站上看到一个奇怪的问题。如果我登录到子域然后进入主域,单击主页上的任何链接会导致被拒绝的 URL 扫描错误,并且 Web 日志中显示的链接 URL 以波浪号开头。这可能是什么问题?
1374 次
1 回答
0
结果证明这是一个 UrlScan 问题,在最近更新主机后,开始拒绝任何包含特殊字符的查询。仅当存在 cookie 时才会发生这种情况,因为某些 cookie 中的值具有特殊字符。
找到原因后,我希望打开 UrlScan 中允许特殊字符的特殊标志。但我无法在 web.config 中成功完成。它必须在每个网站的 IIS 级别完成。我正在考虑是否出于安全原因这样做。新的 UrlScan 功能的想法有利于阻止攻击。
同时,我添加了一些初始化代码来删除旧的 cookie 并使用加密值重新创建它们,这样就不会遇到特殊字符。但是在某些情况下甚至初始化代码也无法运行,所以我也不得不将它添加到最终的错误处理页面中以进行自动恢复。
于 2014-11-09T06:59:05.890 回答