Перенаправление Httpd mod_jk на сервер glassfish не работает должным образом

#java #apache #glassfish #webserver #mod-jk

#java #apache #glassfish #веб-сервер #mod-jk

Вопрос:

У меня есть это веб-приложение, размещенное на сервере Glassfish, которое отлично работает, если к нему осуществляется прямой доступ через порт 8080 по протоколу HTTP или 8181 по протоколу HTTPS.

В моей производственной среде у нас есть интерфейсный веб-сервер, который доступен через Интернет. Это служба Apache httpd, которая поставляется в комплекте с RHEL server. Этот веб-сервер перенаправляет запросы с помощью модуля mod_jk на соответствующий внутренний сервер приложений. Итак, я настроил свой сервер Glassfish на прослушивание JKListener на порту xxx, а веб-сервер настроен на перенаправление любых запросов для моего нового веб-приложения в Glassfish JKListener.

Сначала кажется, что все работает нормально, перенаправление происходит, как и ожидалось. Но вскоре мое веб-приложение перестает отвечать, и ничего не происходит, пока я не перезапущу сервер Glassfish.

Покопавшись в логах mod_jk, я обнаружил следующие ошибки —

 1 - 

 [info] ajp_send_request::jk_ajp_common.c [1234] (worker) all endpoints are dissconnected , detected by connect check [1], cping (0), send (0)

2 -

 [info] jk_handler::mod_jk.c (2618): Service error=-3 for worker=worker1

 [error] ajp_service::jk_ajp_common.c (2559): (worker1) connecting to tomcat failed.

 [info] ajp_service::jk_ajp_common.c (2540): (worker1) sending request to tomcat failed 
 (recoverable), because of error during request sending (attempt=2)

 [error] ajp_send_request::jk_ajp_common.c (1585): (worker1) connecting to backend      failed. Tomcat is probably not started or is listening on the wrong port (errno=111)

 [info] ajp_connect_to_endpoint::jk_ajp_common.c (959): Failed opening socket to   (A.B.C.D:xxx) (errno=111)
  

Первый элемент журнала также повторялся много раз, когда все, кажется, работает нормально

В журналах glassfish по этому поводу не было ничего доступного, ниже приведены сведения об окружающей среде

  1. Интерфейсный веб-сервер : RHEL 4.5, Apache Httpd 2.0.57
  2. Сервер веб-приложений: RHEL 5.4, glassfish 3.1.2.2
  3. Веб-приложение — использует JSF 2.1, Primefaes 3.5, используя Primepush для событий, отправляемых сервером

Ответ №1:

Вы добавили исключение своей страницы в virtualhosts? Попробуйте это: http://www.codefactorycr.com/glassfish-behind-apache.html

Комментарии:

1. Можете ли вы подробнее рассказать о добавлении исключения страницы для виртуальных хостов, предоставленная ссылка содержит только базовую настройку и ничего не сообщает об исключениях страницы

2. Эта ссылка была просто для того, чтобы сравнить вашу работу с их работой и посмотреть, не пропустили ли вы что-то. Можете ли вы опубликовать свой worker.properties и httpd.conf и