Недавно мне пришлось установить приложение Java для клиента, использующего Tomcat6. Приложение должно было запускаться из корня их домена, поэтому я также установил apache2 и mod_proxy_ajp, чтобы настроить прокси-сервер для этой работы. После небольшого массажа и поиска в Google, чтобы иметь дело с Заголовками Местоположения, включая оригинальный путь сервлетов, а не корня прокси. Я придумал это.
<VirtualHost *:80>
ServerName myclientssite.com
ErrorLog /var/log/apache2/ajp.error.log
CustomLog /var/log/apache2/ajp.log combined
<Proxy *>
AddDefaultCharset Off
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass / ajp://localhost:8009/appname/
ProxyPassReverse / http://localhost:8080/appname/
ProxyPassReverseCookiePath /appname/ /
Header edit Location ^([^/]*//[^/]*)?/appname/(.*)$ $1/$2
</VirtualHost>
Мой вопрос: это лучшее решение? Похоже, что без mod_headers и строки редактирования заголовка, заголовки обычно включают подкаталог appname.