2013-07-14 6 views
2

나는 NGINX 역 프록시 솔루션에 완전히 초보자이며 모든 용어를 이해하기가 어려워 보인다. 나는 다음과 같은 해결책을 찾고있다. 나는 같은 것을 구성하는 데 도움이되는 사람을 정말 고맙게 생각합니다.Nginx 다시 작성 규칙 가이드

우리는 WWW 사이트에 게시하고 싶지만 고객이 내부 서버 URL을 보지 못하게하려는 내부 웹 서버를 가지고 있습니다. 예 :

고객 액세스 www.mycompany.com/track -> NGINX는 트랙을 읽고 URL을 내부 server.com.au/tracker로 리디렉션합니다. 고객이이 주소를보고 싶지 않습니다.

의견이 있으십니까?

건배,의 nginx에 다시 쓰기

샌디

답변

0

아파치보다 상당히 동일합니다 :) 구문은 다릅니다. 아파치가 RewriteRule을 사용할 때, nginx는 rewrite를 사용합니다. 이 참조 http://wiki.nginx.org/HttpRewriteModule을 제안 해 주시겠습니까? 다시 쓰기 관련 설명서는 2.4 및 2.5를 확인하십시오. 다시 쓰기 구문과 다시 쓰기 옵션에 대한 정보를 찾을 수 있습니다. 당신은 단지 기본 구문이 필요하면

위의 간단한 예입니다 : 그런데

rewrite ^(/download/.*)/media/(.*)\..*$ $1/mp3/$2.mp3 break; 

당신이 예에서 작업 할 경우, 당신은 조각으로 아파치의 .htaccess 파일을 변환 할 수 있습니다 이 도구를 사용하여 nginx 구성을 사용하십시오. http://winginx.com/htaccess

+1

영업 이익은 사용자의 내부 URL을 숨기고 싶은에 대한 매우 구체적인, 그래서 무엇을 필요있어하는 프록시가 아닌 리디렉션입니다. – mc0e

+0

그래서 나는 리다이렉트를 제안하지 않았다 :)이 나의 친애하는 리디렉션, 리디렉션되지 않습니다. 실제 URL을 구성하면 해당 URL을 숨 깁니다. –

1

이 경우 프록시를 사용하는 것이 훨씬 좋습니다. 다시 쓰기는 동일한 도메인 내의 URL 또는 클라이언트를 리디렉션 (URL에 표시됨)하는 데 사용됩니다. 이 시도 :

location/{ 
    proxy_pass http://internal.example.com/; 
    proxy_set_header Host $host; 
}