Nginx, Node.JS and socket.io 504 timeout

Kirill nginx-forum at nginx.us
Tue Oct 1 15:22:14 UTC 2013


Здравствуйте!

Nginx config

   server {
       listen        *:80;
       server_name   live.domain.com;

       server_tokens off;
       charset utf-8;

           error_log       /var/log/nginx/live-error.log info;
           access_log      /var/log/nginx/live-access.log;

       location / {
           proxy_http_version 1.1;
           proxy_set_header Upgrade $http_upgrade;
           proxy_set_header Connection "upgrade";
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_set_header Host $http_host;
           proxy_set_header X-NginX-Proxy true;
           proxy_pass http://127.0.0.1:1337;
           proxy_redirect off;
       }
   }

Node.js отлично работает с таким конфигом.
Но если node.js выключен, то по ссылке
http://live.domain.com/socket.io/socket.io.js я ожидаю какое-то
время(read_timeout) и потом получаю 504 ошибку.

Мне надо сделать так, чтобы если node,js выключен и клиент обращается к
адресу http://live.domain.com/socket.io/socket.io.js , то ему СРАЗУ же
выдается либо 404, либо 502 (что должно быть логично)
Иначе я не понимаю как быть если node.js отвалился, а у пользователя не
грузится страница из-за того, что js по указанному пути ожидает таймаута.

Спасибо!

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,243312,243312#msg-243312



Подробная информация о списке рассылки nginx-ru