2012-08-16 55 views
0

我的问题是,我最近设置了Apache2.2 Frontend的Tomcat7应用程序容器。由于该项目仍在开发中,我正在通过为域设置.htaccess中的IP白名单来控制访问。Apache .htaccess白名单不会阻止Tomcat与Mod_jk

我设置mod_jk通过AJP13到Tomcat,它工作得很好,除了.htaccess不阻止Tomcat转发的事实。换句话说,如果你从一个“黑色”IP进入www.mydomain.com,你会被转发到错误页面,但是如果你进入www.mydomain.com/AppContext,你通过Apache滑入Tomcat中

我开始搞乱了urlrewritefilter与Tomcat,但由于某种原因,它不起作用。 我想知道是否有任何方式来设置.htaccess或Apache而不是阻止请求转发到Tomcat类似的请求Apache?

当使用它时,也注意到了戏剧性的速度降低,我们在使用Apache作为前端时常见?

回答

0

.htaccess文件仅在Apache使用基于目录>的配置(在httpd.conf中)时才起作用。在mod_jk的情况下,匹配请求(由JkMount指令指定)将被简单地转发到AJP连接器。

使用<Location>来控制访问,而不是:

<Location "/AppContext"> 
    Order Deny,Allow 
    Deny from all 
    Allow from .myCompany.local 
</Location> 

详见<Location> Directive>

+0

优秀的解决方案,谢谢! 您对我的问题的第二部分有什么看法?我的意思是预计由于端口的推进会出现某种延迟,但我认为它不会引人注目。 (我有一个2核2GB内存VPS) – gergiusz 2012-08-17 19:51:23

+0

不客气!在正常情况下,不应该放慢速度 - Apache + Tomcat是标准的生产环境。请务必删除任何遗留的URL重写实验,然后再次检查。还有一点:将'JkLogLevel'(在mod_jk.conf中)从'info'更改为'error'。其默认设置会生成大量的日志行,这可能会降低操作速度。 – 2012-08-18 13:08:02