Белый список Apache .htaccess не блокирует Tomcat с помощью Mod_jk
Моя проблема в том, что я недавно установил контейнер приложений Tomcat7 с интерфейсом Apache2.2. Поскольку проект все еще находится в стадии разработки, я контролирую доступ с помощью белого списка IP-адресов, настроенного в домене в.htaccess.
Я установил mod_jk через AJP13 для Tomcat, он работает абсолютно нормально, за исключением того факта, что.htaccess не блокирует пересылку для Tomcat. Другими словами, если вы заходите на www.mydomain.com с "черного" IP, вы попадаете на страницу с ошибкой, но если вы заходите на www.mydomain.com/AppContext, вы переходите через Apache в Tomcat.
Я начал возиться с urlrewritefilter с Tomcat, но по какой-то причине это не сработало. Мне интересно, есть ли способ настроить.htaccess или apache вместо того, чтобы блокировать запросы, пересылаемые Tomcat, аналогично запросу для Apache?
Также заметили резкое снижение скорости при использовании его таким образом, что обычно при использовании Apache в качестве внешнего интерфейса?
2 ответа
Файлы.htaccess будут работать только тогда, когда Apache использует конфигурацию на основе
использование <Location>
вместо этого контролировать доступ:
<Location "/AppContext">
Order Deny,Allow
Deny from all
Allow from .myCompany.local
</Location>
Увидеть <Location> Directive>
для деталей.
Я столкнулся с той же проблемой и нашел решение, которое может решить и ваше дело. Используйте обратный прокси-сервер, такой как Nginx или Squid, для перенаправления трафика Apache Tomcat. Оба они могут использовать htpassword для аутентификации и, следовательно, будут служить вашим потребностям. Если вы хотите использовать Apache в качестве внешнего интерфейса, тогда backend может быть nginx, который, в свою очередь, будет перенаправлен на Tomcat после правильной аутентификации. Это может иметь удар по производительности, хотя.