nginx를 사용하여 기업 우산 사이트 만들기

nginx를 사용하여 기업 우산 사이트 만들기

내 고객은 자신의 모든 사업을 원래 위치에서 옮기지 않고 하나의 우산으로 결합해야 합니다. 예를 들어, 그는 이미 realestate.com 및 movers.com으로 실행되는 사이트를 갖고 있으며 이제는 이 두 사이트를 Corporate.com 아래에 결합하여 Corporate.com/real 링크가 real.corporate.com에 매핑되고 다음에서 호스팅되는 웹 사이트를 표시하려고 합니다. realestate.com. 이는 리디렉션이 아니므로 URL 표시줄에는 realestate.com에 대해 real.corporate.com이 표시되고 모든 링크도 상대적입니다. 예를 들어 realestate.com/index.html은 real.corporate.com/index.html로 표시됩니다. realestate.com/portfolio/houses/pictures는 real.corporate.com/portfolio/houses/pictures로 변경됩니다. Proxy_pass를 사용해 보았으나 URL이 변경되었습니다. 현재 한 사이트에서 테스트 중이며 다음은 내 서버 블록입니다.

server{
listen 80;

location / {
proxy_pass http://www.realestate.com/;
sub_filter_once off;
proxy_redirect off;
proxy_set_header Host $host;
}
}

이 설정을 사용하면 realestate.com으로 직접 이동하고 브라우저에서도 URL이 변경됩니다. 위치를 변경하면 location /real404 오류가 발생합니다.

도와주세요

답변1

귀하의 구성은 리디렉션을 수행하지 않습니다. 리디렉션은 의 업스트림 웹 서버에 의해 전송됩니다 realestate.com.

realestate.com요청이 애플리케이션에 구성된 도메인으로 전송되지 않기 때문에 애플리케이션은 으로 리디렉션을 보냅니다 .

다음을 사용하여 이를 변경할 수 있습니다.

proxy_set_header Host www.realestate.com;

이 설정은 헤더와 함께 업스트림 프록시 요청을 보내며 Host: www.realestate.com, 이는 업스트림 서버의 적절한 가상 서버에서 종료됩니다.

그러나 에서 생성된 링크에는 여전히 문제가 있을 수 있습니다 www.realestate.com.

또한 HTTP 리디렉션을 보내는 경우 www.realestate.com리디렉션 내용을 지시문으로 바꿔야 합니다 proxy_redirect default;.

관련 정보