У меня проблема с приложением Django, обслуживаемым Nginx + Gunicorn: настроенный в HTTP, он работает правильно; после установки и запроса SSL-сертификата с помощью Let's Encrypt и изменения конфигурации время ожидания запроса к приложению истекает.
Используются следующие конфигурации:
Сокет :
[Unit]
Description=Gunicorn socket
[Socket]
ListenStream=/run/gunicorn.sock
[Install]
WantedBy=sockets.target
Системный сервис :
[Unit]
Description=Gunicorn daemon
Requires=gunicorn.socket
After=network.target
[Service]
User=user
Group=user
WorkingDirectory=/var/www/application
ExecStart=/var/www/application/venv/bin/gunicorn \
--access-logfile - \
--workers 3 \
--bind unix:/run/gunicorn.sock \
DjangoApp.wsgi:application
[Install]
WantedBy=multi-user.target
Nginx конфигурация :
upstream app_server {
server unix:/run/gunicorn.sock fail_timeout=0;
}
server {
listen 443 ssl;
server_name example.com;
access_log /var/log/nginx/example.access.log;
error_log /var/log/nginx/example.error.log;
location /static {
alias /var/www/application/static;
}
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://app_server;
}
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
I также попытался отключить брандмауэр, думая, что это может быть проблема с сетью, но он продолжает выдавать мне ту же ошибку.
Я прочитал несколько других ответов, но ни один из них не дал мне решения.
Любая помощь приветствуется.
Спасибо.