프록시 서버를 설정하려고 합니다.
proxy-server.com/app1 --> website1.com
proxy-server.com/app2 --> website2.com
- 실제 백엔드 애플리케이션으로의 리디렉션이 없어야 합니다. 사용자는
proxy-server.com/app[1/2]
URL에서만 볼 수 있습니다 . - 모든 정적 리소스는 정상적으로 로드되어야 합니다. 예를 들어
/js/sample.js
app2의 리소스는 위치에서 요청해야 합니다./app2/js/sample.js
- 양식을 제출하거나 app2의 다른 페이지로 이동하는 등 작업을 수행할 때 요청이
/app2
올바른 주소로 프록시되도록 앞에 추가되어야 합니다.
http {
upstream webapp1 {
server website1.com:443;
}
upstream webapp2 {
server website2.com:443;
}
server {
listen 80;
listen 443 ssl;
server_name proxy-server.com;
# certificate section
location /app1 {
proxy_pass https://webapp1/;
proxy_set_header Host website1.com;
}
location /app2 {
proxy_pass https://webapp2/;
proxy_set_header Host website1.com;
}
}
}
구성은 지점 1만 수정하지만 위에서 언급한 다른 두 지점에 대한 해결책을 찾기 위해 열심히 노력하고 있습니다. 나는 if
진술이나 모듈을 피하려고 노력할 것이라는 점을 언급하기 위해 깨끗한 솔루션을 찾고 있습니다 sub_filter
:)