Как я упоминал раньше, для создания дополнительных виртуальных хостов в Tomcat достаточно добавить контейнеры <Host> в тэг <Engine>. Попробуем добавить виртуальный хост для сайта example.com. Для начала откройте /etc/tomcat6/server и добавьте хост, примерно так:
<Host name=”example.com” appBase = 7var/lib/tomcat6/example” unpackWARs=”true” autoDeploy=”true”
<Context path=”” docBase=”test”>
</Context>
</Host>
Стоит отметить, что мы задали контейнер <Context>, которое помещает содержимое приложения в каталог “test” в appBase.
Теперь создайте новые каталоги:
# cd /var/lib/tomcat6
# mkdir p example/test
Чтобы проверить идею на практике, добавим в приложение JSP страницу. Это файл /var/lib/tomcat6/example/test/greet.jsp: <html>
<head>
<title> Welcome to example.com </title>
</head>
<body>
<% out.println(“This is the example.com site”);
%>
</body>
</html>
В «реальном мире» (все собираюсь съездить туда: говорят, там здорово) нам понадобились бы записи DNS, которые связывают наше доменное имя с IP адресом нашего сервера. Но пока можно просто добавить запись в /etc/hosts таким образом:
127.0.0.1 example.com
После этого попробуйте по пинговать example.com, с целью убедиться, что этот адрес преобразуется в 127.0.0.1:
# ping c 1 example.com
Теперь перезапустите Tomcat:
# service tomcat6 restart
Наконец, зайдите на http://example.com:8080/test/greet.jsp. Ваши труды будут вознаграждены.