2008-09-25 5 views
0

soutien de connexion de Tomcat Actuellement redirige les utilisateurs à l'endroit où ils ont d'abord été lorsque la demande a compris qu'ils ne sont pas connectés.Comment puis-je configurer Tomcat pour qu'il redirige toujours vers index.jsp après la connexion?

Pour cette application particulière, je dois les forcer à aller toujours à index.jsp. Je suis assez sûr que c'est une option de configuration simple dans le web.xml de la guerre, mais je n'ai pas trouvé la réponse dans google.

Répondre

2

Une meilleure solution serait probablement d'utiliser un filtre de servlet. Vous pouvez alors vérifier j_username/j_password, et un login réussi et les rediriger là où vous voulez qu'ils aillent.

-1

C'est quelque chose que vous ne pouvez pas configurer dans web.xml car il ne fait pas partie de la norme. Pour Tomcat (testé sur la version 6.0.14), vous pouvez forcer les utilisateurs à index.jsp en ajoutant le code suivant en haut de votre login.jsp. Il redirige toutes les requêtes qui n'ont pas de paramètre portant le nom 'login' dans l'URL vers la page /index.jsp?login. Comme la redirection possède le paramètre 'login', la page de connexion sera présentée à l'utilisateur.

Ce n'est pas une solution sécurisée. Si quelqu'un demande une page et ajoute le paramètre de connexion, il sera redirigé. Alors:

/id = 1234 forain seront redirigés vers /index.jsp?login

/id = 1234 forain connexion ne sera pas rediriger vers /index.jsp?login

Le code?? va sur le dessus de votre login.jsp:

<% 
if (request.getParameter("login") == null) { 
    response.sendRedirect(request.getContextPath() + "/index.jsp?login"); 
    return; 
} 
%> 

au lieu d'utiliser le paramètre « login », vous pouvez probablement utiliser un cookie. Vous pouvez le rendre plus sûr en créant une valeur aléatoire pour le paramètre de connexion (login = randomvalue) et stocker la valeur dans l'objet de session pour la comparaison.

Questions connexes