Я использую Nginx + Gunicorn, который обслуживает мой проект Django. Все GET-запросы зависают ~ 1 мин. Кажется, что контент доступен немедленно, поскольку я вижу его в инспекторе браузера, но сам браузер выглядит так, как будто он все еще ждет дополнительных данных. Вот мой конфиг Ngnix
#allow for up to 3 connections per second.
limit_req_zone $binary_remote_addr zone=one:10m rate=3r/s;
server {
listen 80;
server_name example.com;
root /var/www/example.com/example/;
# serve directly - analogous for static/staticfiles
location /media/ {
# this changes depending on your python version
root /home/example/;
}
location /static/ {
# if asset versioning is used
if ($query_string) {
expires max;
}
root /var/www/example.com;
}
location / {
#Allow for a burst of 50.
limit_req zone=one burst=50 nodelay;
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_connect_timeout 10;
proxy_read_timeout 10;
proxy_pass http://localhost:8001/;
}
# what to serve if upstream is not available or crashes
error_page 500 502 503 504 /media/50x.html;
}
Моя конфигурация Gunicorn:
bind = "127.0.0.1:8001"
workers = 3
worker_class = "gevent"
Есть ли что-нибудь очевидное, что могло бы заставить запросы оставаться открытыми так долго?
Оказывается, проблема заключалась в том, что мой путь к моему статическому контенту был неправильным, из-за чего он блокировался при каждом запросе.