Я запускаю Tomcat на моем сервере Linux, и я хочу использовать для этого обратный прокси. После прочтения руководства на apacha для mod_proxy я не совсем понял путь / в proxypass.
Приведу небольшой пример. каталог для моего кота - / tomcat / webapp. Верна ли следующая конфигурация?:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ProxyRequests Off
ProxyPass /tomcat/webapp http://127.0.0.1:8080
ProxyPassReverse /tomcat/webapp http://127.0.0.1:8080
</VirtualHost>
Я был бы благодарен, им может помочь кто-нибудь с опытом.
Теоретически в зависимости от того, что ProxyPass
директиву, которую вы выберете, она будет работать, даже если вы выберете прокси http://example.com:8080/webapp/
так как http://example.com/foo/bar/baz/
.
Однако, если ваше приложение использует абсолютные пути в гиперссылках, лучше использовать один и тот же путь URI для обоих Apache и Кот или у вас будут проблемы как в этот вопрос. Так:
В любом случае вы должны использовать:
ProxyPass "/path/to/webapp/" "http://127.0.0.1:8080/path/to/webapp/"
PS: Поскольку, видимо, вы хотите запустить Tomcat на двух портах, лучше, если вы сообщите веб-приложению, что оно проксируется и что порт 8443
доступ через SSL:
<Connector port="8080"
proxyName="example.com"
proxyPort="80"
redirectPort="443" />
<Connector port="8443"
proxyName="example.com"
proxyPort="443"
scheme="https" secure="true" />
поэтому веб-приложение не будет генерировать бесполезные перенаправления из порта 8443
портировать 443
.