web-dev-qa-db-fra.com

Comment augmenter le délai d'attente pour Nginx?

J'utilise Python, Flack, UWSGI et NGinx pour héberger un serveur Web. L'une des fonctions implique de générer un fichier pour l'utilisateur qui peut prendre jusqu'à une minute ou deux. Sur cette action, je continue à obtenir 504 délais de Nginx. J'ai essayé de changer certaines variables de configuration dans /etc/nginx/nginx.conf aimer keepalive_timeout Mais cela n'a pas fonctionné. J'ai également essayé d'ajouter ce qui suit à /etc/nginx/conf.d/timeout.conf:

proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;

et puis je suis recharné avec systemctl reload nginx Mais cela n'a rien changé.

Comment augmenter la durée avant la période de la requête? Merci pour toute aide

5
Adam Strike

Ajoutez les directives suivantes à la fin de la section "http" pour augmenter la limite de délai d'expiration à 180 secondes (3 minutes):

http {
    <...>
    include /etc/nginx/conf.d/.conf;

    proxy_send_timeout 180s;
    proxy_read_timeout 180s;
    fastcgi_send_timeout 180s;
    fastcgi_read_timeout 180s;
}

Source: https://support.plesk.com/hc/en-us/articles/115000170354-OPERATION-OR-A-Script-That-Takes-More-Than-60-seconds-à-- Complete-échec-sur-a-website-hébergé-in-plesk-nginx-504-passerelle-time-out

3
Vinay

Je suis confronté au même problème. J'ai trouvé une solution de contournement racontant Nginx d'accepter une certaine quantité de données par défaut. Ne pas essayer de gérer le délai lui-même mais la modification de la quantité de données acceptées dans la transaction a fait l'affaire.

 server {

        client_max_body_size            5M; # or more ^^

}

mais ce n'est vraiment pas une option sécurisée. Cela fonctionne, mais prenez soin de cela.

de plus, si vous utilisez une passerelle inversée du proxy WSGI (PHP par exemple). Le mécanisme de sous-couche peut présenter la priorité sur cette

1
Emmanuel BRUNET