2016-03-22 11 views
0

Ich benutze NGINX als Reverse-Proxy für eine neue Webapp-Schnittstelle über einen alten Service.Vermeiden Sie 504 Antwort von NGINX

NGINX dient die statischen Ressourcen und leitet die API-Anfragen über an den alt Server (auch sie von der Öffentlichkeit verstecken, da es nicht einen A + SSL-Setup haben kann)

Zeit zu Zeit Gateway Timeout 504 I erhalten Antworten, Es fühlt sich an wie NGINX wiederverwendet Verbindungen und der Webserver von der anderen Seite reagiert nicht mehr nach der Wiederverwendung für zu lang.

Die Lösung ist sehr einfach , ein einfacher sudo service nginx restart behebt diesen Gateway-Timeouts, noch würde Ich mag diesen „Glitch“ einmal beheben und für alle.

einfaches Diagramm:

Users    New Website (NGINX)    Old Website (ASP?) 
/   <<< serves index.html 
    /api/item <<< change headers and forward >>> API request >\ 
                    | 
       <<< change headers and forward <<< API response </ 

Antwort

1

HTTP-Status 504 bedeutet, dass der Upstream-Server ausgefallen ist oder langsam innerhalb Ihrer angegebenen Timeout zu reagieren.

Erhöhen Sie Ihre proxy_<*>_timeout und laden Sie Nginx neu.

Hier finden Sie die Anweisungen - http://nginx.org/en/docs/http/ngx_http_proxy_module.html