로드 밸런서 역할을하도록 nginx를 구성 할 수 있다는 것을 알고 있지만 프록시간에로드 균형을 조정할 수 있는지 궁금합니다. 로컬 호스트에서 여러 개의 프록시가 실행 중이며 nginx를 사용하여 프록시간에 순환 할 수 있도록 단일 연결 지점을 제공하고자한다고 가정 해 보겠습니다. 나는 게시물 here, nginx 대신 HAProxy를 사용하여 비슷한 것을 달성하기 위해 노력하고 있습니다. 나는이 같은 컬 요청을 보낼 때, 그러나프록시 용로드 밸런서 역할을하도록 nginx를 구성하는 방법은 무엇입니까?
events { }
http {
upstream proxies {
server localhost:9998;
server localhost:9999;
server localhost:10000;
}
server {
listen 8080;
location/{
proxy_pass http://proxies;
}
}
}
: 나는 nginx.conf
다음이
curl http://icanhazip.com -x localhost:8080
그것은 URL을 무시하고 내가 가진 경우 내가 기대하는 것과 유사한 응답을 얻을 UPS를 치료하기 nginx를 말할 수있는 몇 가지 옵션이 있어야하기 때문에 내가 정말이 일을 기대하지 않았다 물론
curl localhost:9999
: 직접과 같이 프록시 서버 중 하나에 요청을 전송 tream 서버를 프록시로 사용합니다. 그러나 온라인 검색 후이를 수행하는 방법을 찾지 못했습니다.
나는 당신의 문제가 무엇인지, 그리고 당신은 프록시라고 부르는 지 모르겠다. 여기 nginx로드 밸런스는 역방향 프록시이기도하다. 문제가 호스트 헤더가 없다는 사실입니까? the_proxy_pass 명령 다음에'proxy_set_header Host $ host;'를 추가하십시오. – regilero
내가 설정 한 여러 프록시 사이를 돌리기 위해 nginx를 사용하려고합니다. 즉, 프록시로 nginx 호스트 및 포트 (예 : localhost : 8080)에 연결할 수있게하려면 프록시가 설정되어 프록시 사이를 순환합니다. –
확인을 시도 했습니까? 호스트 물건? 역방향 프록시는 거의 투명하므로 nobody는 프록시 된 백엔드가 최종 서버인지 또는 일부 프록시인지는 알고 있지만 프록시에 실제로 전달하는 도메인을 알아야합니다. – regilero