Nginx를 요청을받은 후 proxy_pass를 수행하여 포트 8001에서 실행되는 업스트림 서버에서 실제 웹 응용 프로그램을 가져 오는 역방향 프록시로 사용하고 있습니다.
mywebsite.com으로 이동하거나 wget을 수행하면 60 초 후에 504 Gateway Timeout이 발생합니다. 그러나 mywebsite.com:8001을로드하면 응용 프로그램이 예상대로로드됩니다!
그래서 뭔가 Nginx가 업스트림 서버와 통신하는 것을 방해하고 있습니다.
이 모든 것은 호스팅 회사가 내 물건이 실행 중이던 컴퓨터를 재설정 한 후 시작되었습니다.
내 vhosts 서버 블록은 다음과 같습니다.
server {
listen 80;
server_name mywebsite.com;
root /home/user/public_html/mywebsite.com/public;
access_log /home/user/public_html/mywebsite.com/log/access.log upstreamlog;
error_log /home/user/public_html/mywebsite.com/log/error.log;
location / {
proxy_pass http://xxx.xxx.xxx.xxx:8001;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
내 Nginx 오류 로그의 출력 :
2014/06/27 13:10:58 [error] 31406#0: *1 upstream timed out (110: Connection timed out) while connecting to upstream, client: xxx.xx.xxx.xxx, server: mywebsite.com, request: "GET / HTTP/1.1", upstream: "http://xxx.xxx.xxx.xxx:8001/", host: "mywebsite.com"