2012-10-22 4 views
0

Tomcat 서버 클러스터가있는 apache http 서버 (로드 밸런서)가있는 작동 환경이 있습니다. 하지만 한 가지 문제로 인해 난처한 상황에 처해 있습니다. 요청 URL을 리디렉션하거나 다시 쓸 수 없습니다. 예를 들어,Apache http 서버 재 작성 또는 리디렉션

request url - http://www.yyy.com 

내가 리디렉션 또는 내가 리디렉션을 시도하고 행운과 함께 다시

http://www.yyy.com/mycontext 

로 재 작성하고 싶습니다.

RewriteRule ^/$ http://www.yyy.com/mycontext/ [L] - Error (can't fine the url) 

후 나는이 시도,

Redirect/http://www.yyy.com/mycontext/ - this results in the following, 

http://www.yyy.com/mycontext/mycontext/mycontext/mycontext/mycontext/........... repeats. 

나는 올바른 조건 문을 알아낼 수 없습니다입니다. 나는 서버 변수를 사용하여 rewritecond를 작성하려고 시도했지만 잘못하고있다. 무시된다.

도움을 주시면 감사하겠습니다. 나는이 분야에서 많은 경험을하지 못했다.

+0

리버스 프록시 /로드 밸런서 명령을 표시 할 수 있습니까? –

+0

ProxyPass/http://www.yyy.com/mycontext/와 같이 프록시 엑스를 사용하려고했는데 오류가 발생했습니다. 서버에서 요청을 처리하기 위해 스레드가 부족합니다. ThreadsPerChild 설정을 높이는 것을 고려하십시오.그래서 나는 리다이렉션과 재 작성을 실험하기 시작했다. – sharman

+0

그리고이'ProxyPass/http : // www.yyy.com/mycontext /'는'www.yyy.com'에 대한 설정에 들어 있는가? 가상 호스트에 –

답변

0

그리고이 ProxyPass/http://www.yyy.com/mycontext/www.yyy.com의 설정에? 가상 호스트

부하 분산 적 가능성이 일할 수있는 방법을 잘하지에


예. 프록시 요청은 자신에게 돌아가며 프록시 요청이 자체 스레드에서 실행되기 때문에 스레드가 즉시 실행됩니다. /에 대한

  1. 요청 자체
  2. /mycontext/ 요청이 가상 호스트에
  3. ProxyPass 리버스 프록시를 도착
  4. 그것을
  5. http://www.yyy.com/mycontext/mycontext/에 인 http://www.yyy.com/mycontext/에 가상 호스트에
  6. ProxyPass 리버스 프록시를 도착 /mycontext/mycontest/에 대한 요청은 가상 호스트에 도착합니다.
  7. ProxyPass 리버스 프록시 그것에 http://www.yyy.com/mycontext/mycontext/mycontext/

나는 당신이 아마 찾고있는 것은 생각

:

RewriteCond %{REQUEST_URI} !^/mycontext/ 
RewriteRule ^(.*)$ /mycontext/$1 [L] 

그러나 이것은 당신의 부하 분산 또는 바람둥이와는 아무 상관이 없습니다 섬기는 사람.

+0

응답 주셔서 고마워요. 그게 다야!. 나는 문법으로 고심하고 있었다. – sharman