Apache envía 400 en lugar de 404

Tengo un problema extraño. Apache está respondiendo con un código de error 400 en lugar de 404 cuando un cliente solicita una página jsp no existente (la request html se responde correctamente con un 404). La única vez que Apache sirve correctamente con un 404 es cuando la request a la página inexistente es un file en el directory raíz. Soy consciente de que el directory raíz coincide con una regla de reescritura pero aún así no parece relevante.

Por ejemplo:

www.xxx.com/jjj.jsp - 404 www.xxx.com/bla/jjj.jsp - 400 

Tengo Apache 2.2 y Tomcat 6 instalo con mod_jk. Reenvío todas las peticiones jsp a mod_jk. Aquí está mi input de httpd.conf relevante:

 ServerAdmin xxx@xxx.com DocumentRoot /opt/tomcat/webapps/sb ServerName xxx ErrorLog /var/log/httpd/xxx/error_log CustomLog /var/log/httpd/xxx/custom_logs common JkMount /*.jsp ajp13 RewriteEngine On RewriteLogLevel 9 RewriteLog /var/log/httpd/xxx/rewrite.log RewriteCond %{HTTP_HOST} !^www\.xxx\.com$ [NC] RewriteRule ^(.*)$ http://www.xxx.com$1 [R=301,L] RewriteRule ^/([\w\d]*).jsp$ /sb/jsp/$1.jsp [PT,NC,QSA,L] RewriteRule ^/$ /sb/jsp/index.jsp [PT] [NC] [QSA] [L] 

Aquí hay una salida de custom_logs

 xxxx - - [08/Dec/2010:09:34:40 -0500] "GET /examples/ddd.jsp HTTP/1.1" 400 xxxx - - [08/Dec/2010:09:59:59 -0500] "GET /gti.jsp HTTP/1.0" 200 662 

One Solution collect form web for “Apache envía 400 en lugar de 404”

El error proviene de tomcat. Hit tomcat directamente.

También las reglas de reescritura para RewriteRule ^/([\w\d]*).jsp$ /sb/jsp/$1.jsp [PT,NC,QSA,L] está captando jsps de nivel de raíz. Eso es – cualquier jsp en el directory de nivel superior. Así que cuando hay un /gfoo.jsp se ejecuta – se reescribe en /sb/jsp/foo.jsp – de lo contrario no se reescribe.

  • Logging X-Forwarded-For IP en los loggings de auditoría de Shibboleth
  • ¿Cómo bloquear el acceso a un file desde Tomcat?
  • rsync webapps subdirectorys
  • Configurando Apache, Tomcat, mod_jk y mod_rewrite para servir a tomcat de nivel superior
  • Cómo acceder a un file o carpeta simple desde la carpeta webapps de Tomcat
  • Cómo configurar mod_proxy_ajp para dar permissions diferentes a diferentes aplicaciones en un host virtual?
  • Adición de un docBase para Virtual Host utilizando el Administrador de Host Virtual de Tomcat
  • Expertos de Tomcat, /proxy/http/1.2.3.4/index.html al proxy http://1.2.3.4/index.html - posible?
  • Apache2 mod_jk LoadBalancer + Tomcat7 - Ajuste de performance
  • Tomcat url reescritura falla con 404, pero la navigation directamente devuelve un 200
  • ¿Cómo habilitar CORS en Glassfish?
  • El linux y los temas del servidor de Windows, como ubuntu, centos, apache, nginx, debian y consejos de red.