2016-09-01 1 views
0

같은 도메인 이름을 수신하는 두 개의 서버 (및 server2)가 있습니다. www.example.com라고 가정 해 보겠습니다.Nginx - 원격 서버에 대한 서브 디렉토리

은 도메인 자체가 가리키는 주된 역할을합니다.

난 할 노력하고있어 server2

server2의 IP입니다 xx.xxx.x.xxxserver1에 내 현재 구성되는 server1의 특정 하위 디렉토리에 대한 모든 요청 프록시 :

server 
{ 
    listen  80; 
    server_name www.example.com; 

    # proxy to port 81 on server1 
    location/
    { 
     proxy_pass_header Server; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_buffering off; 
     proxy_pass http://127.0.0.1:81; 
    } 

    # proxy to server2 
    location /subdirectory 
    { 
     proxy_pass http://xx.xxx.x.xxx:80; 
     proxy_redirect off; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header Host www.example.com; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    } 
} 

지금 받고 있어요 504 Gateway Time-out

답변

0

이 설정은 최선의 방법이 아니며 대기 시간이 과도합니다. 어쨌든 당신은 (기본값은 60입니다) 올바르게 시간 제한을 설정해야

proxy_connect_timeout 90s; 
proxy_read_timeout 90s; 
proxy_send_timeout 90s; 

참조 : http://nginx.org/en/docs/http/ngx_http_proxy_module.html

관련 문제