Может кто-нибудь сказать мне, как запрос маршрутизируется в следующей конфигурации IIS-Tomcat isapiredirect (2.0)? - PullRequest
0 голосов
/ 01 февраля 2012

У меня есть следующие настройки:

1.Tomcat server.xml

<Server port="8005" shutdown="SHUTDOWN">

<Service name="Catalina">

<Connector port="8080"
maxHttpHeaderSize="8192" maxThreads="150" 
minSpareThreads="25" maxSpareThreads="75" 
useBodyEncodingForURI="true" enableLookups="false" 
redirectPort="8443" acceptCount="100" 
connectionTimeout="20000" disableUploadTimeout="true" />

<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />

<Connector port="8009" 
enableLookups="false" redirectPort="8443" 
protocol="AJP/1.3" />

2.worker.properties

[channel.socket:localhost:8009]
info=Ajp13 worker, connects to tomcat instance using AJP 1.3 protocol
tomcatId=localhost:8009

3.IIS

Has a website with port 80 that have isapiredirect filter enabled.

Мой начальный гость - "порт HTTP80-> HTTP8009-> HTTPS8443" "порт HTTP8080-> HTTP8443"

1 Ответ

0 голосов
/ 01 февраля 2012

Ваш AJP Connector (8009) не HTTP, он использует протокол AJP

Если клиенты подключаются через IIS, поток будет

IIS Http80 -> Tomcat AJP 8009 или через https IIS Https443 -> Tomcat AJP 8009

Насколько я знаю, протокол AJP13 не поддерживает шифрование данных, вызванных в IIS, для связи с Tomcat, но вы можете установить параметр, чтобы tomcat знал, что передний веб-сервер - HTTPS, так что request.isSecure () возвращает true .

Ваши разъемы для налива 8080/8443 на tomcat будут использоваться только при непосредственном подключении к tomcat.

...