2012-10-17 6 views
0

우리는 2 개의 Apache 서버가 서로 다른 컨텐츠를 제공하고 가상 호스트를 사용합니다. 한 서버에는 블로그, 위키 및 포럼이 있으며, 다른 하나에는 헬프 데스크 및 정적 페이지가 있습니다. 우리는 현재 두 서버 앞의 세 번째 서버에 하나의 오징어 역 프록시를 가지고 있습니다.2 개의 서버에있는 가상 캐시 아파치 가상 호스트

우리는 오징어 리버스 프록시를 바니시로 교체하려고합니다.

아무 것도 찾을 수 없으며 varnish, apache and namebased virtual host with own ip addresses이 작동하지 않습니다.

우리가 니스를 설치하려는 CentOS 6 서버입니다.

누구나 작동 할 수있는 구성이 있습니까?

편집 할 내용 : Ok 마지막으로 알아 냈습니다. 후손을위한 완벽한 스크립트를 찾으십시오. 서버 1에

은 다음과 같습니다 서버 2에

oldforum.test.co.za registration.test.co.za : forum.test.co.za blog.test.co.za

acl internal_net { 
     "localhost"; 
     "192.168.1.0"/24; 

} 
backend server1 { 
    .host = "192.168.1.101"; 
    .port = "80"; 
} 
backend server2 { 
    .host = "192.168.1.102"; 
    .port = "80"; 
} 

# Respond to incoming requests 
sub vcl_recv { 
######BACKENDS##################### 
# 
#SERVER1 
# 
if (req.http.host == "registration.test.co.za$") { 
set req.backend = server1; 


} else if (req.http.host ~ "oldforum.test.co.za$") { 
     set req.backend = server1; 
# 
#SERVER2 
# 
} else if (req.http.host ~ "forum.test.co.za$") { 
     set req.backend = server2; 


} else if (req.http.host ~ "blog.test.co.za$") { 
     set req.backend = server2; 
} 

     # Allow purge only from internal users 
     if (req.request == "PURGE") { 
       if (!client.ip ~ internal_net) { 
         error 405 "Not allowed."; 
       } 
       return (lookup); 

} 
# Non-RFC2616 or weird requests 
     if (req.request != "GET" && 
       req.request != "HEAD" && 
       req.request != "PUT" && 
       req.request != "POST" && 
       req.request != "TRACE" && 
       req.request != "OPTIONS" && 
       req.request != "DELETE") { 
       return (pass); 
     } 
} 

답변

0

"작동하지 않는다"고 언급 한 게시물은 완벽하게 잘 보입니다. 바니시 구성에서 2 개의 백엔드를 만든 다음 요청 된 호스트를 기반으로 백엔드를 선택합니다.

작동하지 않는 경우 추가 세부 정보를 얻지 못하는 설정 및 구성 정보를 게시해야합니다.

+0

답변 해 주셔서 감사합니다. 나는 이것을 후에 버너에 넣었지만 몇 달 안에 질의를 업데이트 할 것이다. – rezizter