server {
listen 80;
server_name example.com www.example.com;
위치 /콘솔 {
if ($request_method !~ ^(GET|POST)$) {
return 405 "Not allowed";
}
set $consolalb alb.backend;
proxy_pass http://$consolalb/workspace/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Custom-Forwarded-Proto $http_x_forwarded_proto;
proxy_cache_bypass $http_upgrade;
}
}
사용자 요청이 ngnix 컨테이너 역방향 프록시에 도달하는 시나리오가 있습니다.www.example.com/consol백엔드 alb(예: alb.backend)로 전달해야 하며 alb는 컨텍스트 경로 /workspace를 사용하여 Oracle Hyperion 응용 프로그램 서버에 매핑됩니다.
위의 구성을 사용하면 초기 로그인 페이지 /workspace/index.jsp를 로드할 수 있으며 페이지를 찾을 수 없다는 오류가 발생하는 다양한 컨텍스트 경로가 포함된 추가 팝업도 얻을 수 있습니다. 해당 페이지를 찾을 수 없습니다. URL은 다음과 같습니다.www.example.com/interop,www.example.com/mypage.jsp등 모든 팝업에 페이지를 찾을 수 없음 오류가 있습니다.
어떻게 전달해야 할지 조언이 필요해요www.example.com/consolhttp://$consolalb/workspace/에 대한 수신 사용자 요청; http://$consolalb/*에 대한 처음 및 후속 팝업 요청
답변1
애플리케이션은 생성된 출력에 URL을 생성합니다. 따라서 생성된 URL이 정확하도록 올바른 기본 URL을 사용하도록 애플리케이션을 구성해야 합니다.