Je souhaite exécuter une application Tomcat via une URL de site Web standard, telle que www.xyz.com
. Je voudrais que la racine de ce domaine fasse office de répertoire de base pour l'application Web, de sorte que chaque demande www.xyz.com/a/b/c
devienne www.abc.com:8080/myApp/a/b/c
. Idéalement, je pourrais le faire de manière transparente et uniquement pour certaines webapps.
www.abc.com:8080
devrait toujours répondre aux demandes.
Que dois-je faire pour que cela se produise?
apache-2.2
tomcat6
Stefan Kendall
la source
la source
Une méthode plus simple pour ce faire consiste à simplement ajouter une entrée d'hôte virtuel dans votre fichier de configuration Apache. Généralement situé dans / etc / httpd / conf, ajoutez quelque chose comme ceci à la fin de la section Virtual Host:
Redémarrez votre service Apache et vous avez terminé.
la source
Vous pouvez utiliser mod_rewrite dans Apache pour ce faire. Chargez mod_rewrite dans votre Apache et dans votre vhost www.xyz.com ajoutez la règle suivante:
RewriteRule ^/(.*) http://www.abc.com:8080/myApp/$1
Cela devrait faire la magie.
Plus d'informations sur mod_rewrite ici .
EDIT : Afin de conserver le nom du site dans les navigateurs, utilisez également mod_proxy en ajoutant simplement un [P] à la fin de la RewriteRule:
RewriteRule ^/(.*) http://www.abc.com:8080/myApp/$1 [P]
Cela forcera Apache à agir en tant que proxy pour cette URL au lieu de simplement réécrire l'URL.
la source
www.xyz.com
du côté de l'utilisateur.