тема говорит все. Я хочу отобразить каждый дополнительный домен в webapp, например:
http://root.domain.com:8080 -> http://domain.com:8080/
http://manager.domain.com:8080 -> http://domain.com:8080/manager
http://abc.domain.com:8080 -> http://domain.com:8080/abc
http://def.domain.com:8080 -> http://domain.com:8080/def
на машине с локальным хостом это будет
http://root.localhost:8080 -> http://localhost:8080/
http://manager.localhost:8080 -> http://localhost:8080/manager
http://abc.localhost:8080 -> http://localhost:8080/abc
http://def.localhost:8080 -> http://localhost:8080/def
В идеале, я бы хотел использовать порт 80 вместо 8080, но это другая история. Я был бы рад получить его с портом 8080, так что путь в конце URL-адреса исчезнет.
Заметьте, стрелки не перенаправляются, а то, что я бы ввел, если бы я оставил Tomcat как есть.
Я знаю страницу документов Tomcat http://tomcat.apache.org/tomcat-6.0-doc/virtual-hosting-howto.html. Я читал его много раз, но не добился больших успехов. Я отредактировал etc/hosts, чтобы добавить 127.0.0.1 bbstats.localhost. Затем я добавил
<Host name="bbstats.localhost" appBase="webapps/bbstats"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
в Tomcat server.xml в conf. Мой webapp context.xml:
<Context path="/bbstats" docBase="bbstats" debug="5" reloadable="true" crossContext="true">
</Context>
Перезапустить Tomcat. Перезагрузка с помощью Ant. При вводе
http://bbstats.localhost:8080/
в браузере, я получаю пустой экран.
При использовании appBase = "webapps" вместо appBase = "webapps/bbstats", я получаю приложение Tomcat root. Последнее поведение является ожидаемым. Но как мне сделать bbstats.localhost: 8080 перейти к bbstats webapp без привязки /bbstats в URL?