Подтвердить что ты не робот

Как перенаправить с Apache на Tomcat?

Я работаю над своим первым сайтом Java. Я запускаю Apache Tomcat на порту 8080 и Apache HTTPD на порт 80. Текущий URL-адрес, который я могу получить на сайте, это (например) 123.4.5.6:8080. Я хочу удалить номер порта из URL-адреса, прежде чем указывать домен на новом IP-адресе.

В настоящий момент я использую Apache для phpmyadmin, но я планирую использовать его для скриптов CGI и других вещей, как только я выясню mod_jk и т.д.... Поэтому я не хочу менять порт Tomcat на 80 и отключите Apache.

Надеюсь, это имеет смысл.

4b9b3361

Ответ 1

Правильный способ сделать это - оставить Apache на 80 и Tomcat на 8080 и использовать подключаемый модуль (предпочтительно mod_proxy) для прокси-сервера Tomcat от Apache. mod_proxy вам понадобится всего 10 минут.

Этот How-to очень прост.

Ответ 2

Обычный способ, как вы уже упоминали, заключается в использовании mod_jk из Apache HTTPD для пересылки этого контента, который вы хотите обработать Tomcat.

В tomcat.apache.org есть Quick HowTo. Вам необходимо сделать следующее:

  • Скопируйте mod_jk.so в соответствующий каталог модулей для Apache HTTPD.
  • Создайте конфигурационный файл workers.properties
  • В Apache HTTPD httpd.conf добавьте раздел для настройки mod_jk.
  • Убедитесь, что Tomcat настроен на прием протокола mod_jk, который обычно находится на порту 8009.

Строки в httpd.conf с JkMount:

JkMount  /examples/* worker1

сообщите Apache HTTPD, запросы которого должны быть отправлены Tomcat.

Ответ 3

Оба полезные ответы выше хорошо, но я предпочитаю mod_proxy более mod_jk. Нет никакой дополнительной установки для mod_proxy, в отличие от mod_jk, и настройка намного проще. mod_jk дает вам больше контроля над подробной настройкой параметров Tomcat, но если вам просто нужно простое перенаправление с Apache на Tomcat, mod_proxy - это путь.

Ответ 4

Если вы хотите, чтобы статический контент обслуживался Apache вместо Tomcat, вы должны использовать mod_jk: http://tomcat.apache.org/tomcat-6.0-doc/proxy-howto.html

А как насчет SSL - если мы хотим, чтобы Apache обрабатывал HTTPS, потому что он быстрее, чем java/Tomcat?