HTTPS devient HTTP après redirection
Bonjour à tous,
J'ai un Apache sur une Mandriva qui redirige les URL en https du port 9090 vers le port 8080 (donc vers mon Tomcat).
Cette config est bizarre mais nécessaire car le reste du https doit aller sur un site PHP qui n'a rien à voir avec ma web-app J2EE.
J'ouvre ma page de login https://monsite:9090/WEBAPP/Login et je clique sur Me connecter.
Théoriquement, en cas d'erreur, je reste sur cette page, et en cas de succès, je suis redirigée vers l'action Redirect qui redirige à son tour vers l'action Profil.
En pratique, je suis déboutée après le login (après le logout aussi, d'ailleurs) : La connexion avec le serveur a été réinitialisée pendant le chargement de la page blablabla va voir ailleurs si ton serveur y est.
Bien entendu, la webapp fonctionne parfaitement en http sur le port 8080, les redirections se font sans erreur.
Voici mon fichier struts.xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <default-action-ref name="Redirect" />
<global-results>
<result name="login" type="redirectAction">
<param name="namespace">/</param>
<param name="actionName">Login</param>
</result>
<result name="login-success" type="redirectAction">Redirect</result>
<result name="error" type="redirectAction">Error</result>
</global-results>
<action name="Error" class="fr.webapp.action.Error">
<result>/WEB-INF/pages/error.jsp</result>
</action>
<action name="Redirect">
<result type="redirectAction">
<param name="namespace">/moncompte</param>
<param name="actionName">Profil</param>
</result>
</action>
<action name="Login" class="fr.webapp.action.authentication.LoginAction">
<result name="input">/WEB-INF/pages/login.jsp</result>
<result name="login">/WEB-INF/pages/login.jsp</result>
<result>/WEB-INF/pages/login.jsp</result>
</action>
<action name="Logout" class="fr.webapp.action.authentication.LogoutAction">
<result type="redirectAction">Redirect</result>
</action> |
A noter que si je remplace
Code:
<result name="login-success" type="redirectAction">Redirect</result>
par
Code:
<result name="login-success">/WEB-INF/pages/profil.jsp</result>
je n'ai pas d'erreur après la connexion (par contre, la page est foireuse : l'URL reste sur Login, les properties ne sont pas chargées, impossible de modifier le profil...).
J'ai vu que dans mon fichier server.xml, il était fait mention du port 8080 et d'une redirection vers le 443 mais
1) je suis une brêle en réseau,
2) je ne suis pas admin sur le serveur (presta),
3) et je suis une brêle en réseau.
server.xml :
Code:
1 2
| <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="8443" /> |
Quelqu'un aurait une piste, s'il-vous-plaît ?