La forma más sencilla en la que puedo pensar es usar cURL (que es de secuencias de comandos).
curl -v -X TRACE http://www.yourserver.com
Ejecutarlo en un servidor Apache con TraceEnable Off
devuelve HTTP/1.1 405 Method Not Allowed
(solo probado en un Apache 2.2.22)
Esto también funciona en sitios HTTPS, siempre que cURL tenga la información correcta suministrada a la capa SSL. Este es el cheque del hombre perezoso de Google
curl --insecure -v -X TRACE https://www.google.com/
... negocia la conexión (no verifica la cadena de certificados, pero ese no es el problema aquí ya que queremos verificar el estado de TRACE
) y responde 405:
* Server certificate:
* subject: C=US; ST=California; L=Mountain View; O=Google Inc; CN=www.google.com
* start date: 2013-02-20 13:34:56 GMT
* expire date: 2013-06-07 19:43:27 GMT
* subjectAltName: www.google.com matched
* issuer: C=US; O=Google Inc; CN=Google Internet Authority
* SSL certificate verify result: unable to get local issuer certificate (20), continuing anyway.
> TRACE / HTTP/1.1
> User-Agent: curl/7.25.0 (x86_64-suse-linux-gnu) libcurl/7.25.0 OpenSSL/1.0.1c zlib/1.2.7 libidn/1.25 libssh2/1.4.0
> Host: www.google.com
> Accept: */*
< HTTP/1.1 405 Method Not Allowed