인터넷에서 인트라넷 내부에있는 타사 응용 프로그램에 액세스하기위한 리버스 프록시 설정이 있습니다. 이 응용 프로그램이 URL에 있다고 가정 해 봅시다.
https://internalserver:8080/
(인트라넷에서만 도달 가능)
프록시가 켜져 있습니다.
https://proxyserver/
(세계 어느 곳에서나 접근 가능)
프록시는 nginx에 의해 관리되며 정상적으로 작동합니다. 사용자가 액세스하면에서 https://proxyserver/
앱의 콘텐츠를 얻습니다 https://internalserver:8080/
.
문제는 응용 프로그램이 HTML 응답에 절대 URL을 작성하고 있기 때문에 사용자가 새 페이지에 대한 링크를 클릭하면 브라우저가 내부 이름이있는 페이지를 찾으려고합니다 (예 :
https://internalserver:8080/somepage
대신)
https://proxyserver/somepage
.
이것이 프로그램 버그라는 것을 알고 있지만 프로그램을 수정할 수 없습니다.
응답을 가로 채고 URL을 수정 한 다음 nginx를 사용하여 최종 클라이언트에 보낼 수 있습니까 (수정)? 아니면 다른 도구와 함께?
편집 : 나는 이 질문을 전에 보았지만 내 사건은 더 구체적이며 인용 된 질문은 일반적인 수정을 요구합니다. 이 경우 fast-cgi ad hoc 프로그램이 최고의 솔루션이며, 내가 원하는 것은보다 일반적인 시나리오에 대한보다 구체적인 솔루션입니다. fast-cgi 프로그램이 작동 할 수 있지만 가장 쉽고 강력한 방법을 찾고 있으며이 시나리오를위한 솔루션으로 현실 세계에 입증되었습니다.