Thin 앱 서버 를 사용하려고 했는데 한 가지 문제가있었습니다.
nginx 가 애플리케이션을 사용하여 Thin (또는 Unicorn)에 대한 요청을 프록시 할 때 nginx proxy_pass http://my_app_upstream;
( http://my_app_upstream
)가 보낸 수정 된 URL을 수신합니다 .
내가 원하는 것은 앱이 그것에 크게 의존하기 때문에 수정하지 않고 클라이언트의 원래 URL과 원래 요청을 전달하는 것입니다.
nginx의 문서 는 다음과 같이 말합니다.
처리되지 않은 형식으로 URI를 전송해야하는 경우 URI 부분없이 proxy_pass 지시문을 사용해야합니다.
하지만 관련 샘플이 실제로 URI를 사용하고 있으므로 정확히 구성하는 방법을 이해하지 못합니다.
location /some/path/ {
proxy_pass http://127.0.0.1;
}
클라이언트 의 원래 요청 URL 을 보존하는 방법을 알아 내도록 도와 주 시겠습니까?
proxy_pass
지시문 끝에서 슬래시를 제거하는 것 입니다.http://my_app_upstream
대http://my_app_upstream/