Установка и настройка IIS
Internet Information Services (IIS) — это одна из серверных ролей ОС Microsof Windows Server. IIS может быть установлен через графический интерфейс с помощью "Диспетчера серверов" (Server Manager).
Диспетчер серверов представляет собой средство для установки (удаления) ролей и устройств сервера, а также предоставляет информацию обо всех установленных ролях и устройствах.
- Установка IIS
- Настройка работы Tomcat через IIS с помощью расширения Application Request Routing (ARR)
- Настройка работы Tomcat через IIS через протокол AJP
- Настройка работы через SSL
- Перенаправление с HTTP на HTTPS
Установка IIS
Чтобы установить IIS, выполните следующие действия:
- Меню "Пуск" → "Диспетчер серверов".
-
Выберите "Добавить роли и компоненты".
-
На этапе выбора устанавливаемых ролей необходимо отметить "Веб-сервер (IIS)".
- При настройке работы Tomcat через протокол AJP в окне с компонентами необходимо выбрать "Фильтры ISAPI".
- Далее оставить все настройки по умолчанию и продолжить установку.
Настройка работы Tomcat через IIS с помощью расширения Application Request Routing (ARR)
Протокол AJP не поддерживает веб-сокеты. Для работы веб-сокетов рекомендуется использовать сервер IIS с помощью расширения Application Request Routing (ARR)
Установка Application Request Routing Module
Для установки Application Request Routing (ARR) используйте "Установщик веб-платформы" или дистрибутив ARR.
Ссылка для скачивания "Установщика веб-платформы" и дистрибутив ARR для необходимой архитектуры
Для "Установщика веб-платформы" необходим доступ в Интернет. Если доступ в Интернет отсутствует, скачайте дистрибутив ARR заранее.
После скачивания "Установщика веб-платформы" запустите его установку. Примите лицензионное соглашение, чтобы продолжить установку.
После завершения установки на экране откроется окно.
Настройка Internet Information Services (IIS >= 7.0)
Для настройки Internet Information Services (IIS), выполните следующие действия:
- Откройте "Диспетчер служб ISS" (IIS Manager).
- В IIS Manager перейдите в настройку сервера "Application Request Routing Cache".
- На панели "Действия" (справа) в блоке "Proxy" нажмите "Server Proxy Settings".
-
В настройках Server Proxy Settings установите флажок "Enable Proxy", остальные настройки оставьте без изменений.
Примените настройки на панели "Действия".
- В IIS Manager перейдите в настройку "Переопределение URL-адресов" сайта, на котором будет работать Tomcat.
- На панели "Действия" (справа) нажмите на "Добавить правила".
- В окне "Добавить правила" выберите "Пустое правило" для входящего трафика.
- В окне "Изменить правило для входящего трафика":
- в поле "Имя" укажите новое правило, например, "Tomcat";
- в поле "Шаблон" укажите (.*);
- в поле "URL-адрес переопределения" укажите строку http://hostname:8080/{R:0}, где hostname — имя хоста, на котором работает Tomcat или его IP-адрес;
- чтобы сохранить изменения нажмите "Применить" на панели "Действия" (справа).
-
Настройте корректные сообщения об ошибках:
- выберите сайт, на котором работает приложение;
- перейдите в "Страницы ошибок" (двойной клик на соответствующей иконке);
- нажмите "Изменить параметры..."
- в открывшемся окне (блок "Сообщения об ошибках") выберите вариант "Подробные сообщения об ошибках";
- нажмите "ОК"
- Перезапустите IIS. Проверьте работоспособность приложения через IIS (в примере настройки используется 80 порт).
Настройка работы Tomcat через IIS через протокол AJP
AJP (Apache JServ Protocol) — бинарный протокол взаимодействия между веб-сервером, выступающим в качестве фронтенда, и сервером приложений.
Чтобы настроить проксирование запросов от IIS к Tomcat по протоколу AJP, выполните следующим настройки.
-
Установка и настройка AJP коннектора.
- Скачайте файлы Tomcat ISAPI Filter по ссылке с официального сайта Apache скачать
- Распакуйте скачанный файл в каталог C:\naumen\nausd4\iis
-
Создайте файл конфигурации C:\naumen\nausd4\iis\uriworkermap.properties
# uriworkermap.properties - IIS # # This file provides mappings for the workers # defined in workermap.properties.minimal. # The general syntax for this file is: # [URL]=[Worker name] /*=naumen
-
Создайте файл конфигурации C:\naumen\nausd4\iis\workers.properties.
В файле указывается адрес и порт Tomcat, на котором работает приложение.
Протокол AJP не предполагает шифрования, поэтому соединение необходимо устанавливать только через локальный интерфейс.
worker.list=naumen worker.naumen.type=ajp13 worker.naumen.host=127.0.0.1 worker.naumen.port=8009
-
Создайте файл конфигурации C:\naumen\nausd4\iis\isapi_redirect.properties
extension_uri=/jakarta/isapi_redirect.dll log_file=C:\naumen\nausd4\iis\isapi_redirect.log log_level=error worker_file=C:\naumen\nausd4\iis\workers.properties worker_mount_file=C:\naumen\nausd4\iis\uriworkermap.properties
-
Добавление ISAPI фильтр в IIS.
-
Установите роли веб-сервера IIS "Фильтрация запросов" ("Request Filtering"), "Расширения ISAPI" ("ISAPI Extensions"), "Фильтры ISAPI" ("ISAPI Filters").
-
Добавьте ISAPI Filter через диспетчер служб IIS:
-
Создайте виртуальный каталог.
-
Выберите созданный виртуальный каталог.
-
В левой панели соединений выберите свой сервер IIS.
-
Перейдите в функцию "Ограничения ISAPI и CGI".
-
В правой панели действий нажмите "Добавить" ("Add") и заполните параметры:
- Путь ISAPI или CGI ("ISAPI or CGI path") — "C:\naumen\nausd4\iis\isapi_redirect.dll"
-
Описание ("Description") — "tomcat"
- Разрешить выполнение пути расширения ("Allow extension path to execute") — да
-
-
В левой панели соединений ("Connections") выберите пулы приложений.
-
В левой панели соединений ("Connections") выберите сайт, который необходимо проксировать.
-
-
Настройка коннектора Tomcat на работу по протоколу AJP.
-
В конфигурационном файле tomcat/conf/server.xml отредактируйте строку, отвечающую за настройку AJP коннектора:
<Connector port="8009" address="127.0.0.1" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" URIEncoding="UTF-8" />
В примере, в целях безопасности коннектор открывается для локального интерфейса.
- В том же файле добавьте в основной HTTP коннектор Tomcat (на порту 8080) параметр address="127.0.0.1" или закомментируйте коннектор целиком.
- После изменения конфигурации Tomcat перезапустите службу.
-
-
Проверьте доступность приложения через IIS.
После произведенных настроек запросы в IIS должны проксироваться на Tomcat по протоколу AJP.
Настройка работы через SSL
Для разрешения работы через SSL (по протоколу https), выполните следующие действия:
- Создайте или проимпортируйте сертификат: в разделе Server → Сертификаты сервера.
-
Настройте SSL binding в окне "Web Site".
-
Настройте обязательность SSL: в окне Web Site → Параметры SSL поставьте флажок "Требовать SSL".
Перенаправление с HTTP на HTTPS
Для реализация автоматического перенаправления с http на https, выполните следующие действия:
- Отключите "Требовать SSL" в параметрах SSL для сайта.
-
Создайте новое пустое правило для входящего трафика.
-
Добавьте условие для правила, для этого нажмите кнопку Добавить в блоке "Условия".
- в поле "Ввод условия" укажите {HTTPS};
- в поле "Шаблон" укажите ˄OFF$.
-
Добавьте действие для правила, для этого в блоке "Действие".
- выберите тип действия "Перенаправление";
-
в поле "URL-адрес перенаправления" (блок "Свойства действия") укажите
https://{HTTP_HOST}/{R:1};
- выберите тип перенаправления "См. другое (303)";
-
После создания правила, переместите его над остальными правилами.
- Проверьте работу автоматического перенаправления с http на https.