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

IIS中OPTIONS显示TRACE已启用却返回501未实现,如何开启TRACE用于测试?

问题原因

IIS返回的OPTIONS响应里的允许动词列表是预先配置的静态值,和实际可处理的动词没有强关联。你遇到501 Not Implemented错误的核心原因是IIS默认没有配置TRACE动词对应的处理程序,即便请求筛选里允许TRACE请求,也没有组件可以处理该类请求。

你提供的请求截图参考:

  • OPTIONS请求响应截图:OPTIONS响应
  • TRACE请求501错误截图:TRACE错误

开启TRACE测试的操作步骤

方法1:通过IIS管理器图形化配置

  • 打开IIS管理器,定位到目标默认站点,双击进入「处理程序映射」功能
  • 点击右侧操作栏的「添加模块映射」,按要求填写配置:
    • 请求路径:*
    • 模块:选择ProtocolSupportModule
    • 名称:可自定义,例如TRACE专用处理程序
  • 点击「请求限制」按钮,切换到「动词」标签页,选择「下列动词」,输入TRACE后依次点击确定保存所有配置
  • 回到站点功能主页,双击进入「请求筛选」功能,切换到「HTTP谓词」标签页,确认TRACE谓词状态为允许,若为禁用则右键选择「允许」
  • 打开cmd执行iisreset命令重启IIS服务,配置即可生效

方法2:直接修改站点web.config配置

无需操作IIS管理器,直接在站点根目录的web.config文件中添加如下配置段即可:

<configuration>
  <system.webServer>
    <handlers>
      <add name="TRACE-Handler" path="*" verb="TRACE" modules="ProtocolSupportModule" resourceType="Unspecified" requireAccess="None" />
    </handlers>
    <security>
      <requestFiltering>
        <verbs>
          <add verb="TRACE" allowed="true" />
        </verbs>
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

配置保存后重启IIS即可生效。

注意:HTTP TRACE动词存在跨站追踪(XST)攻击风险,仅可在本地测试环境临时开启,测试完成后请立即关闭相关配置,生产环境禁止启用TRACE动词。

内容的提问来源于stack exchange,提问作者Сергей

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 23:45:07