You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IIS 10.0访问含'end'关键词的aspx页面时返回404错误

问题分析与解决方案

以下是针对IIS下含"end"关键词的ReturnUrl导致LogOn.aspx报404问题的排查方向和解决办法:

  • URL安全扫描模块拦截
    IIS自带的URLScan或者ASP.NET请求验证机制可能将"end"判定为敏感关键词,直接拦截了请求。

    • 检查URLScan配置文件(路径一般为%WINDIR%\System32\inetsrv\urlscan\UrlScan.ini),查看[DenyQueryStringSequences]节点下是否存在"end",若有则删除该条目。
    • 若使用ASP.NET Framework,可在web.config中针对LogOn.aspx关闭请求验证:
      <location path="LogOn.aspx">
          <system.web>
              <pages validateRequest="false" />
          </system.web>
      </location>
      
  • URL重写规则冲突
    如果站点配置了URL重写模块,可能存在规则误匹配到含"end"的ReturnUrl,导致错误跳转或返回404。

    • 打开IIS管理器的「URL重写」模块,逐一检查现有规则,确认是否有针对"end"字符串的匹配逻辑。可调整规则的匹配条件,比如添加排除LogOn.aspx请求的判断,或者修改正则表达式避免误触发。
  • 自定义HTTP模块/全局请求处理逻辑拦截
    应用自身的自定义HTTP模块或Global.asax中的请求处理事件(如Application_BeginRequest),可能对含"end"的URL参数做了特殊处理,返回了404。

    • 检查web.config中的<modules>(IIS7+)或<httpModules>(旧版IIS)节点,排查自定义模块的代码逻辑;同时查看Global.asax文件,确认是否有针对URL参数的过滤逻辑。
  • IIS请求过滤规则限制
    IIS的请求过滤功能可能配置了拒绝含"end"字符串的查询参数。

    • 在IIS管理器中进入站点的「请求过滤」→「查询字符串」选项卡,检查是否存在拒绝"end"的规则,若有则删除;也可直接在web.config中清理相关配置:
      <system.webServer>
          <security>
              <requestFiltering>
                  <denyQueryStrings>
                      <clear />
                  </denyQueryStrings>
              </requestFiltering>
          </security>
      </system.webServer>
      

内容的提问来源于stack exchange,提问作者Kamal Deka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 02:44:54