Хорошо, поэтому я хочу, чтобы веб-приложение, работающее в tomcat (5.5), работало за apache 2 (точнее, 2.2.3), обслуживающим из корня сайта (т.е. без контекста), со статическим контентом, обслуживаемым через apache.
Поэтому, если приложение работает под «/myapp
» на tomcat, я хочу использовать apache (плюс mod_rewrite
), чтобы оно вело себя так, как будто вместо этого оно работает под «/
».
Mod_jk
настроен и работает нормально. Я могу получить доступ к приложению из "/myapp
", но я не могу заставить работать последний бит. Ниже приведена конфигурация, которую я получил для mod_rewrite
, чтобы попытаться заставить ее работать. Он правильно переписывает URL-адреса /static/
, чтобы заставить apache обслуживать их из распакованого веб-приложения, и если я включаю журнал перезаписи, я вижу, что он пытается передать все другие запросы к /myapp
через mod_jk
. Однако похоже, что после этого mod_jk не обрабатывает запрос.
JkMount /myapp/* worker1
RewriteEngine On
# ensure static stuff gets served by apache
RewriteRule ^/static/(.*)$ /var/lib/tomcat5.5/webapps/myapp/static/$1 [L]
# everything else should go through tomcat
RewriteRule ^/(.*)$ /myapp/$1 [L,PT]
Когда я делал это с apache 1 в прошлом, мне нужно было убедиться, что mod_jk
загружается до mod_rewrite
, но я не могу добиться этого под apache 2. Есть какие-нибудь мысли? Как это обычно делают другие люди?