Я установил httpd и tomcat на свой сервер, но почему-то не могу их подключить.
<VirtualHost *:80>
ServerName www.harshrathod.dev
ServerAlias harshrathod.dev
ServerAdmin ******************
DocumentRoot /var/www/html
DirectoryIndex index.html
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.harshrathod.dev [OR]
RewriteCond %{SERVER_NAME} =harshrathod.dev
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
ProxyRequests off
ProxyPass /projects/legend ajp://localhost:8009/legend
ProxyPassReverse /projects/legend ajp://localhost:8009/legend
</VirtualHost>
Доступ к странице легенды на harshrathod.dev показывает ошибку вместо ответа со страницей index.jsp в "../webapps/legend". Оба сервера запущены и работают. HTTPD прослушивается на 80 и tomcat на localhost: 8080
Мне нужно наклеить это на:
ProxyRequests off
ProxyPass /projects/legend ajp://localhost:8009/legend
ProxyPassReverse /projects/legend ajp://localhost:8009/legend
в httpd-le-ssl.conf?
В error_log есть эти ошибки, связанные с прокси
[Sun Mar 29 17:13:28.909192 2020] [proxy:error] [pid 6690] (70007)The timeout specified has expired: AH00957: AJP: attempt to connect to 120.0.0.1:8009 (120.0.0.1) failed
[Sun Mar 29 17:13:28.909285 2020] [proxy_ajp:error] [pid 6690] [client 27.56.193.67:10405] AH00896: failed to make connection to backend: 120.0.0.1, referer: https://harshrathod.dev/
[Sun Mar 29 17:18:19.513513 2020] [proxy:error] [pid 6659] (70007)The timeout specified has expired: AH00957: AJP: attempt to connect to 120.0.0.1:8009 (120.0.0.1) failed
[Sun Mar 29 17:18:19.513582 2020] [proxy_ajp:error] [pid 6659] [client 103.125.234.198:57195] AH00896: failed to make connection to backend: 120.0.0.1, referer: https://harshrathod.dev/
Ваш <VirtualHost *:80>
настроен для перенаправления всего на порт 443
(по крайней мере, для harshrathod.dev
и www.harshrathod.dev
домены), поэтому ProxyPass
директива никогда не будет выполнена.
Как вы предлагаете в своем вопросе, вы должны переместить ProxyPass
и соответствующие директивы к вашему <VirtualHost *:443>
.
Отметим также, что Tomcat HTTP/1.1
<Connector>
в порту 8080
не используется в этой конфигурации. Вы используете AJP/1.3
<Connector>
в порту 8009
вместо этого, это более быстрый протокол. Если вы хотите использовать (медленнее) HTTP/1.1
<Connector>
использование:
ProxyPass /projects/legend http://localhost:8080/legend
ProxyPassReverse /projects/legend http://localhost:8080/legend