Я хочу запустить приложение Tomcat через обычный URL-адрес веб-сайта, например www.xyz.com
. Я бы хотел, чтобы корень этого домена действовал как базовый каталог для веб-приложения, поэтому каждый запрос www.xyz.com/a/b/c
становится www.abc.com:8080/myApp/a/b/c
. В идеале я мог бы сделать это прозрачно и только для определенных веб-приложений.
www.abc.com:8080
должен еще отвечать на запросы.
Что мне нужно сделать, чтобы это произошло?
apache-2.2
tomcat6
Стефан Кендалл
источник
источник
Более простой способ сделать это - просто добавить запись виртуального хоста в файл конфигурации Apache. Обычно находится в / etc / httpd / conf, добавьте что-то вроде этого в конце раздела Virtual Host:
Перезапустите службу Apache, и все готово.
источник
Вы можете использовать mod_rewrite в Apache для этого. Загрузите mod_rewrite в ваш Apache, а в vhost www.xyz.com добавьте следующее правило:
RewriteRule ^/(.*) http://www.abc.com:8080/myApp/$1
Это должно сделать магию.
Больше информации о mod_rewrite здесь .
РЕДАКТИРОВАТЬ : Чтобы сохранить имя сайта в браузерах, используйте также mod_proxy, просто добавив [P] в конце RewriteRule:
RewriteRule ^/(.*) http://www.abc.com:8080/myApp/$1 [P]
Это заставит Apache действовать как прокси для этого URL, а не просто переписывать URL.
источник
www.xyz.com
со стороны пользователя.