2012-08-16 4 views
0

제 문제는 Apache2.2 Frontend가있는 Tomcat7 응용 프로그램 컨테이너를 최근 설정했기 때문입니다. 프로젝트가 아직 개발 중이기 때문에 도메인 용 .htaccess에 설정된 IP 허용 목록에 의한 액세스를 제어하고 있습니다.Apache .htaccess 허용 목록은 Mod_jk로 Tomcat을 차단하지 않습니다.

Tomcat에 AJP13을 통해 mod_jk를 설정했지만, .htaccess가 Tomcat에 대한 전달을 차단하지 않는다는 점을 제외하고는 아무 문제없이 작동합니다. 다른 말로하면 "검은"IP에서 www.mydomain.com을 입력하면 오류 페이지로 이동하지만 www.mydomain.com/AppContext를 입력하면 Apache를 통해 Tomcat에 들어갑니다.

Tomcat을 사용하여 urlrewritefilter를 실행했지만 어떤 이유로 작동하지 않았습니다. Apache 요청과 마찬가지로 Tomcat에 전달 된 요청을 차단하기 위해 .htaccess 또는 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 RAM VPS가 있습니다.) – gergiusz

+0

오신 것을 환영합니다! 정상적인 환경에서는 느려지지 않을 것입니다 - Apache + Tomcat은 표준 프로덕션 환경입니다. 실험을 다시 작성하는 URL의 나머지 부분을 삭제하고 다시 확인하십시오. 한 가지 더 요령 :'JkLogLevel' (mod_jk.conf에서)을'info'에서'error'로 변경하십시오. 기본 설정은 작업 속도를 저하시킬 수있는 로그 행을 생성합니다. –