Utilizo Spring Security y el proxy Apache para una aplicación web. Cuando se usa el estándar mod_proxy, todo está bien, pero después de cambiar al proxy AJP aparece un problema con los redireccionamientos de seguridad de Spring.Seguridad de primavera y proxy AJP
Apache config:
<VirtualHost *:80>
ServerName domain.com
ProxyPass/ajp://localhost:8009/Context/
ProxyPassReverse/ajp://localhost:8009/Context/
</VirtualHost>
Cuando llamo http://domain.com/login veo un formulario de acceso.
Cuando envío el formulario voy a http://domain.com/auth y me autentico.
Entonces la primavera de Seguridad debe redirigir a http://domain.com/index pero vuelve a dirigir en lugar de http://domain.com/Context/index
¿Cómo puedo deshacerme de esa ruta de contexto? ¿Por qué Spring Security lo agrega a todos lados?
Hubo una pregunta similar en el sitio primavera de Seguridad pero nadie contestó:
http://forum.springsource.org/showthread.php?95141-Why-is-spring-security-including-the-context-path
P. S. Parece extraño que Google no encuentre nada más relacionado con este problema. ¿Soy el único que usa Spring Security + AJP? Tal vez es un patrón equivocado?
Solución:
<VirtualHost *:80>
ServerName domain.com
RewriteEngine on
RewriteRule ^/Context/(.*)$ /$1 [R=301]
ProxyPass/ajp://localhost:8009/Context/
ProxyPassReverse/ajp://localhost:8009/Context/
</VirtualHost>
Gracias! Finalmente terminé con Apache mod_rewrite. Ver la actualización de mi pregunta. –
¡Me alegro de que haya sido útil! –