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

Local IIS运行ASP.NET应用遇Web Config错误:无法添加Path为'*'的重复add项

解决Local IIS运行ASP.NET应用时的Web Config重复集合项错误

这个错误是因为Web.config(或继承自上级IIS配置)中重复定义了path="*"的集合项(通常是<handlers>或<modules>节点下的<add>元素),以下是具体解决办法:

  • 直接删除重复条目
    打开项目的Web.config文件,定位到报错提示的集合节点(比如<system.webServer>下的<handlers>),查找所有path="*"的<add>元素,删掉重复的那一条即可。

    示例错误代码:

    <system.webServer>
      <handlers>
        <add path="*" verb="*" name="Handler1" modules="..." />
        <add path="*" verb="*" name="Handler2" modules="..." /> <!-- 这条是重复项 -->
      </handlers>
    </system.webServer>
    

    删掉重复的<add>后即可恢复正常。

  • 先移除再添加(解决配置继承冲突)
    如果重复项来自上级IIS配置(比如服务器根目录的Web.config),可以在自己项目的Web.config中先移除继承的项,再重新添加自定义配置:

    <system.webServer>
      <handlers>
        <!-- 先移除继承的path="*"的项 -->
        <remove path="*" />
        <!-- 再添加自己需要的配置 -->
        <add path="*" verb="*" name="CustomHandler" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" />
      </handlers>
    </system.webServer>
    

    若知道继承项的具体名称,用<remove name="继承项名称" />会更精准,避免误删其他配置。

  • 禁用配置继承(谨慎使用)
    如果不希望继承上级IIS的配置,可以在Web.config中用<location>节点包裹相关配置,设置inheritInChildApplications="false":

    <location path="." inheritInChildApplications="false">
      <system.webServer>
        <handlers>
          <!-- 你的自定义handler配置 -->
        </handlers>
      </system.webServer>
    </location>
    

    注意:这个操作会让当前站点完全不继承上级的对应配置,可能导致其他依赖继承的功能失效,仅在确认不需要继承时使用。

  • 用IIS管理器排查
    打开IIS管理器,选中你的站点,点击右侧的「处理程序映射」,查看列表中是否有重复的*路径条目,直接删除重复项即可,修改会自动同步到Web.config。

内容的提问来源于stack exchange,提问作者Being Real

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 18:40:12