2010-10-08 4 views
2

J'ai un serveur web Tomcat 6 qui exécute mon application et je vois un comportement de redirection très étrange.Strange Tomcat slash redirect redirection de domaine

Je m'attends à accéder à mon application à l'adresse URL interne http://appteam.testdomain.co.uk/test et cela retournera une redirection 302 à http://appteam.testdomain.co.uk/test/ qui servira alors index.html, la page d'accueil de l'application.

Cependant, GET pour http://appteam.testdomain.co.uk/test retourne actuellement 302-http://appteam.testdomain.co.ukteam.testdomain.co.uk/test/

Comment puis-je déboguer cette redirection bizarre et ce que config Tomcat pourrait être à l'origine de ce comportement?

EDIT

Pour plus de clarté l'étrangeté est ici qu'une demande de

http://appteam.testdomain.co.uk/test 

est redirigé vers

http://appteam.testdomain.co.ukteam.testdomain.co.uk/test/ 

Notez le domaine mutilée.

EDIT2

@Sean - Je ne fais pas moi-même redirigent. Quelque chose de profond au sein de Tomcat semble gérer cela pour moi. Faites-moi savoir quelles parties des différents fichiers XML Tomcat aideraient à diagnostiquer cela et je les posterai.

+0

Comment exactement vous effectuez la redirection? Pourriez-vous coller la partie pertinente de votre config/code ici. – Sean

+0

Bonjour mchr. Vous pouvez avoir plus de chance sur http://serverfault.com. –

+0

Avez-vous un fichier tomcat_home/conf/server.xml ou conf/context.xml avec un pour l'application de test? Pouvez-vous poster ce bit s'il y en a? ou avez-vous un serveur web Apache en face de ce Tomcat avec des règles de redirection configurées dans httpd.conf ou un fichier .conf similaire? – JoseK

Répondre

1

J'ai développé la réponse et elle est très spécifique à la façon dont mon application est déployée. Tomcat se trouve derrière un proxy NGINX qui transmet presque tout le trafic à Tomcat. Le proxy est utilisé pour gérer certaines URL différemment. Il se trouve que Tomcat retourne un bon 302 à

http://appteam.testdomain.co.uk/test/ 

mais le proxy Nginx est cylindrage en ce

http://appteam.testdomain.co.ukteam.testdomain.co.uk/test/ 
0

Ce comportement ne semble pas être une erreur. Jetty envoie également une redirection 302 si la demande pointe vers un répertoire sans la barre oblique finale.

Le Apache URL Rewriting Guide contient une section sur le Trailing Slash Problème.

+0

Merci pour la réponse rapide, mais ma véritable préoccupation est sur le domaine étant mutilé - voir mon édition ci-dessus. – mchr

+0

Oh, désolé, j'ai oublié cette partie de votre question. Alors ma réponse est inutile pour vous. – vanje