2013-07-19 4 views
1

CentOS 6에서 nginx로 리버스 프록시 설정이 있습니다. 내 페이지 중 하나를 클릭하고 어떤 광고를 클릭했는지에 따라 다른 전화 번호를 표시하려고합니다.Nginx 리버스 프록시 설정으로 찾기 및 바꾸기

저는 http_sub_module을 사용하려고했는데 실제로 어떻게 바꾸는지를 명확하게 이해하지 못했습니다.

http://mysite.com이있다 (111) 123-4567

나는 역방향 프록시가 위의 번호에 대한 검색을 수행하고 (222) 765-321

감사로 교체하고 싶습니다!

답변

1

정말 원본을 다시 작성해야하므로 이상하지는 않지만 sub_filter을 사용하여 프록시 요청에 대한 응답 내용을 다시 작성할 수 있습니다. 귀하의 예제와 함께이는 다음과 같습니다

location /something { 
    ... 

    sub_filter '(111) 123-4567' '(222) 765-321'; 
    sub_filter_once off; 
} 

이의 디폴트의 동작은 한 번 교체하는 것입니다 (나는 예에서 비활성화 된) 만 HTML 페이지에 대한 변경 (이것이의 MIME 타입에 기반을 적용 응답). Location 헤더를 기본 옵션으로 바꿀 수 있고 sub_filter_once 옵션을 사용 중지하면 링크 할 수 있으므로 역방향 프록시에서 사용하는 것이 적합합니다.

컴파일 타임에 명시 적으로 구성하지 않으면이 모듈을 사용할 수 없지만 nginx를 설치 한 모든 패키지 관리자가이 옵션을 활성화 한 것은 제 경험입니다.

자세한 내용은 here에서 확인할 수 있습니다.

관련 문제