天天看點

python+django+nginx+uwsgi環境解決timeout 504

http://www.linuxyw.com/470.html

本人的運維系統是用python+django開發而已,跑在nginx+uwsgi環境上

系統有部分功能是更新遊戲程式等,如果檔案多或大的時候,可能需要等待時間比較長,如果nginx使用預設的配置,一般是60秒就會出現timeout 504,如果系統在60秒沒有傳回結果時,就被timeout 504,會影響到系統的使用。

這裡簡單介紹如何修改nginx.conf配置檔案,防止timeout 504:

  1. fastcgi_connect_timeout 300;  
  2. fastcgi_send_timeout 300;  
  3. fastcgi_read_timeout 300;  
  4. fastcgi_buffer_size 256k;         #以下四個參數已加大,如果設定太小也會出現timeout 504
  5. fastcgi_buffers 16 256k;  
  6. fastcgi_busy_buffers_size 512k;  
  7. fastcgi_temp_file_write_size 512k;  
  8. server {
  9.         listen  8002;
  10.         server_name localhost;
  11.         location / {
  12.             include     uwsgi_params;
  13.             uwsgi_pass   127.0.0.1:9001;
  14.             uwsgi_param UWSGI_CHDIR  /python/owork;
  15.             uwsgi_param UWSGI_SCRIPT django_wsgi;
  16.             access_log /data/logs/uwsgi_access.log;
  17.             uwsgi_read_timeout 1800;  
  18.             uwsgi_send_timeout 300;  
  19.             proxy_read_timeout 300;  
  20.             }
  21.     location ^~ /static {
  22.         alias /python/owork/pro/static/;
  23.         }
  24.     }

繼續閱讀