4.5.7. 更改 HTTP 方法调用行为


JBoss EAP 6.4(包括 JBoss Web 作为 Web 服务器)默认允许 HTTP TRACE 方法调用。

Undertow(替换 JBoss Web 作为 JBoss EAP 7 中的 Web 服务器)默认不允许 HTTP TRACE 方法调用。此设置使用 undertow 子系统中 http -listener 元素的 disallowed-methods 属性进行配置。可以通过查看以下 read-resource 命令的输出来确认这一点。注意 disallowed-methods 属性的值为 ["TRACE"]。

/subsystem=undertow/server=default-server/http-listener=default:read-resource
{
    "outcome" => "success",
    "result" => {
        "allow-encoded-slash" => false,
        "allow-equals-in-cookie-value" => false,
        "allow-unescaped-characters-in-url" => false,
        "always-set-keep-alive" => true,
        "buffer-pipelined-data" => false,
        "buffer-pool" => "default",
        "certificate-forwarding" => false,
        "decode-url" => true,
        "disallowed-methods" => ["TRACE"],
         ...
    }
}

若要在 JBoss EAP 7 及更高版本中启用 HTTP TRACE 方法调用,您必须运行以下命令,从 disallowed-methods 属性列表中删除"TRACE"条目:

/subsystem=undertow/server=default-server/http-listener=default:list-remove(name=disallowed-methods,value="TRACE")

当再次运行 read-resource 命令时,您会注意到 TRACE 方法调用不再在禁止的方法列表中。

/subsystem=undertow/server=default-server/http-listener=default:read-resource
{
    "outcome" => "success",
    "result" => {
        "allow-encoded-slash" => false,
        "allow-equals-in-cookie-value" => false,
        "allow-unescaped-characters-in-url" => false,
        "always-set-keep-alive" => true,
        "buffer-pipelined-data" => false,
        "buffer-pool" => "default",
        "certificate-forwarding" => false,
        "decode-url" => true,
        "disallowed-methods" => [],
         ...
    }
}

如需有关 HTTP 方法默认行为的更多信息,请参阅 JBoss EAP 配置指南中的 HTTP 方法默认行为。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部