Связь Tomcat6 и Apache — пишем VirtualHost для сайта на Tomcat

Столкнулся вот с таким заданием — сделать красивое доменное имя сайту,который работает на Tomcat 6. Как известно Tomcat это ява-движок и работает на отдельном порту(у меня это 8080).Для обращения к такому сайту ссылка выглядит примерно так:  http://mysite.com:8080 что не очень красиво и удобно. Потому стала задача сделать красиво: wiki.mysite.com. И вот тут то столкнулся с проблемой — я думал что достаточно в VirtualHost’е Апача прописать порт *:8080 и мои проблемы решены…Оказалось все далеко не так. Что б обрабатывать соединения на порту 8080 Апач должен слушать порт 8080. А его у нас уже слушает Томсат. Верный гугл помог — на куче буржуйских сайтов нашел решение и вот оно:

1)Ставим модуль для апача — коннектор апача-с-томкатом:

apt-get install libapache2-mod-jk

2)Теперь создаем файл workers.properties в /etc/apache2/ с содержимым:

worker.list=worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8080

3)В apache2.conf добавляем:

JkWorkersFile /etc/apache2/workers.properties
JkShmFile /var/log/apache2/mod_jk.shm
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel info
JkLogStampFormat «[%a %b %d %H:%M:%S %Y] «

4)В sites-enabled/000-default добавляем(до </VitrualHost>!!):

JkMount /wiki* worker1

5)В /etc/tomcat6/server.xml находим строчку

<Connector port=»8080″ protocol=»AJP/1.3″
connectionTimeout=»20000″
URIEncoding=»UTF-8″
redirectPort=»8443″ />

и меняем в protocol=»HTTP/1.1″ на  protocol=»AJP/1.3″ (тут же задается рабочий порт Томката — у меня он 8080).

6)Делаем VitrualHost в apache2/sites-available:

назовем например wiki.mysite.com и в нем:

<VirtualHost *:80>
ServerName wiki.mysite.com
ServerAlias wiki.mysite.com
ServerAdmin root@mysite.com

JkMount / worker1
JkMount /* worker1
ErrorLog /var/log/apache2/wiki.error.log

LogLevel warn

CustomLog /var/log/apache2/wiki.mysite.com-access.log combined
ServerSignature Off

</VirtualHost>

6)Перезагружаем сервера:

/etc/init.d/apache2 restart

/etc/init.d/tomcat6 restart

и пробуем заходить)

2 мысли о “Связь Tomcat6 и Apache — пишем VirtualHost для сайта на Tomcat”

  1. Отличная статья! Только после таких настроек apache не перезапускается…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Анти-спам: выполните заданиеWordPress CAPTCHA