여러 컨텍스트 경로를 사용하여 동일한 위치의 프록시 통과를 허용하는 방법

여러 컨텍스트 경로를 사용하여 동일한 위치의 프록시 통과를 허용하는 방법
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을 사용하도록 애플리케이션을 구성해야 합니다.

관련 정보