Я настроил сервер, на котором расположено несколько доменов, и более чем с одним из них связан ajp13-worker. Файл конфигурации выглядит так:
<VirtualHost *:80>
ServerAdmin my@email
ServerName mydomain
ServerAlias www.domain
DocumentRoot /home/kleber/www/loja
JkMount /app* ajp13_worker
...
</VirtualHost>
когда я развертываю некоторые веб-приложения, например appOne.war
и appTwo.war
в мой каталог веб-приложений tomcat, я могу получить к ним доступ, используя что-то вроде этого: https://mydomain/appOne
и https://mydomain/appTwo
.
Как я мог настроить mod-jk
плагин с tomcat
и apache
чтобы я мог получить доступ к некоторым из этих веб-приложений как https://mydomain/
только? В некотором смысле я мог определить одно веб-приложение для каждого домена, используя mod-jk
ajp13-worker в качестве корневого пути и позволяет мне продолжать получать доступ к веб-приложениям appOne.war
и appTwo.war
как прежде.
Обновить
<VirtualHost *:80>
ServerAdmin ...
ServerName ...
ServerAlias ...
DocumentRoot /home/kleber/www/loja
JkMount /app* ajp13_worker
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =... [OR]
RewriteCond %{SERVER_NAME} =...
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
Если вы хотите сделать одно из веб-приложений доступным в корневом контексте, вы можете переименовать файл war в ROOT.war и повторно развернуть его. Раньше это работало, по крайней мере, на tomcat8 ...
Вам нужна внутренняя перезапись:
<VirtualHost *:80>
ServerAdmin my@email
ServerName loja-de-software.net.br
ServerAlias www.loja-de-software.net.br
DocumentRoot /home/kleber/www/loja
JkMount /app* ajp13_worker
RewriteEngine on
RewriteCond %{HTTP_HOST} loja-de-software.net.br
RewriteRule /(.*) /appOne/$1 [PT,END]
</VirtualHost>