We had a couple of people complaining about the language around TRACE in
the docs, which say disabling TRACE "makes your server noncompliant", a
claim I found hard to support.
All methods but HEAD and GET are defined as OPTIONAL, so I'm not sure
how this is true, am I missing something?
https://tools.ietf.org/html/rfc2616#section-5.1.1
https://tools.ietf.org/html/rfc7231#section-4.1
Is that choice of words just to scare people off? IIRC there are some
pretty strong opinions on this; attached is how I'd change it.
Index: docs/manual/mod/core.xml
===================================================================
--- docs/manual/mod/core.xml (revision 1750619)
+++ docs/manual/mod/core.xml (working copy)
@@ -4532,16 +4532,20 @@
<p>Finally, for testing and diagnostic purposes only, request
bodies may be allowed using the non-compliant <code>TraceEnable
extended</code> directive. The core (as an origin server) will
- restrict the request body to 64k (plus 8k for chunk headers if
+ restrict the request body to 64Kb (plus 8Kb for chunk headers if
<code>Transfer-Encoding: chunked</code> is used). The core will
reflect the full headers and all chunk headers with the response
body. As a proxy server, the request body is not restricted to 64k.</p>
<note><title>Note</title>
- <p>Despite claims to the contrary, <code>TRACE</code> is not
- a security vulnerability, and there is no viable reason for
- it to be disabled. Doing so necessarily makes your server
- noncompliant.</p>
+
+ <p>Despite claims to the contrary, enabling the <code>TRACE</code>
+ method does not expose any security vulnerability in Apache httpd.
+ The <code>TRACE</code> method is defined by the HTTP/1.1
+ specification and implementations are expected to support it.
+ Leaving <code>TRACE</code> enabled is strongly recommended for all
+ deployments of Apache httpd.</p>
+
</note>
</usage>
</directivesynopsis>