Коннектор Tomcat для Internet Information Server не работает

Коннектор Tomcat для Internet Information Server не работает

Я пытаюсь настроить сервер интернет-информации для работы с Tomcat и после выполнения шагов, описанных ввеб-сайтэто не работает.

Хуже всего то, что нет способа документировать или понять, где проблема. Как видно на сайте, нужно выполнить много шагов для настройки, и вывод должен быть "ok", но нет способа диагностировать, где проблема.

ИИС

У меня Windows Server 2012 R2 64 бит с IIS, который идет с установкой. Первый вопрос: ¿это 32 бит или 64 бит??? Для остальной части этого вопроса я буду предполагать, что это 64 бит.

Кот

Apache tomcat 10.0.18. Работает с версией java 1.8.0_161. Сервер настроен на работу в качестве службы с входом в систему под учетной записью "Local System". Для примера предположим, что установлен в %TOMCAT_HOME%.

Разъем AJP настроен следующим образом:

<Connector protocol="AJP/1.3"
           address="0.0.0.0"
           port="8009"
           secretRequired="false"
           xpoweredBy="true"/>

И подтвердил, что это работает:

C:\>netstat -ab | find "8009"
  TCP    0.0.0.0:8009           THIS-SERVER:0        LISTENING
  TCP    [::]:8009              THIS-SERVER:0        LISTENING

Редиректор ISAPI для Microsoft IIS

Скачаноотсюда. 64-битная версия. Устанавливается в %TOMCAT_HOME%\isapi. Файлы конфигурации:

ìsapi_redirect.properties:

#
# isapi_redirect.properties
#

extension_uri=/jakarta/isapi_redirect.dll

log_file=[server-home-removed]\\isapi\\isapi_redirect.log

log_level=debug

worker_file=[server-home-removed]\\isapi\\workers.properties

worker_mount_file=[server-home-removed]\\isapi\\uriworkermap.properties

workers.properties

#
# workers.properties
#

worker.list=tomcat01

worker.tomcat01.type=ajp13
worker.tomcat01.host=localhost
worker.tomcat01.port=8009

uriworkermap.properties

#
# uriworkermap.properties
#

/examples/*=tomcat01
/jakarta/*=tomcat01
/pwdReset/*=tomcat01

Конфигурация IIS проверена

  1. Я предоставил разрешение на доступ к isapiкаталогу, как того требует руководство:

    icacls "%TOMCAT_HOME%\isapi" /grant "IIS APPPOOL\DefaultAppPool":(OI)(CI)M

    icacls "%TOMCAT_HOME%\isapi\isapi_redirect.dll" /grant "Все":RX

  2. Я создал виртуальный каталог af**** (это уже третий или четвертый раз) с именем "jakarta" и указал на последний каталог (см. ниже). Виртуальный каталог имеет свойство "connect as", настроенное как "application user (pass-through authentication)":

введите описание изображения здесь

  1. Сопоставление обработчиков настроено следующим образом:

введите описание изображения здесь

Ограничения на запросы доступа настроены как "none". Но я пробовал также с "execute" и ничего не происходит.

  1. Конфигурация фильтра ISAPI:

введите описание изображения здесь

Проблема вчто, по-видимому, имея все в порядке, вывод, который я получил при попытке подключиться к виртуальному пути, - это ошибка 500, если я использую фильтр ISAPI 32 бита, или ошибка 403, если я использую фильтр ISAPI 64 бита. Что я делаю не так??? И что еще важнее, есть ли способ диагностировать, что различные части этого clusterfuck верны, чтобы проверить, работает ли фильтр ISAPI, работает ли коннектор AJP tomcat и т. д.???

введите описание изображения здесь

решение1

Решено: если вы читаетеобновленная ссылка на соединительвы найдете несколько вещей:

Обратите внимание, что в 64-битной среде — по крайней мере для IIS 7 —для используемого пула приложений IIS параметр «Включить 32-разрядные приложения» должен быть установлен на «Ложь». В противном случае редиректор не будет вызван и вернет http-код 404. Если вы думаете, что 32-битная версия isapi_redirect.dll справится с этой задачей, вы получите http-код 500, поскольку библиотека не загружается в 64-битный IIS.

И я заполнил информацию реестра перед повторным тестированием. Теперь это работает (запросы появляются в стороне tomcat).

Связанный контент