안녕하세요.
nginx을 리버스 프록시로 사용하고 있는데, 원하는 대로 설정이 어려워 질문드립니다.
https://www.domain.com/service1/ 으로 접속할 경우 service1로 연결해주고
그 외 모든 다른 경우는 service2로 보내 주고 싶습니다.
아래는 현 설정파일입니다.
지금 상태로는 https://www.domain.com/service1/ 으로 접근해도 service2로 가네요 T_T
테스트 차원에서 /service1 로 들어올 시 return 301 https://www.naver.com/로 처리해봤지만
역시 네이버로 가는게 아니고, service 2로 가네요.
어떻게 해야 할까요?
리버스 프록시(linuxserver 이미지), 서비스 컨테이너(아파치) 2개로 구성되어있습니다.
location /service1 {
return 301 $scheme://$host/service1/;
}
location ^~/service1/ {
include /config/nginx/proxy.conf;
resolver 127.0.0.11 valid=30s;
set $upstream_app service1;
set $upstream_port 443;
set $upstream_proto https;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
rewrite /service1(/.*) $1 break;
proxy_max_temp_file_size 0;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_set_header Connection $http_connection;
proxy_redirect off;
proxy_ssl_session_reuse off;
}
location / {
auth_basic "Restricted";
auth_basic_user_file /config/nginx/.htpasswd;
include /config/nginx/proxy.conf;
resolver 127.0.0.11 valid=30s;
set $upstream_app service2;
set $upstream_port 443;
set $upstream_proto https;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}
°°Àº µµ¸ÞÀÎ ³»¿¡¼ ¼ºñ½º¸¦ ÇÏ°í ½Í¾î¼ ±×·¸½À´Ï´Ù.