У меня есть сайт, построенный с помощью django и nginx. После добавления Давайте зашифровать SSL-сертификат с использованием Certbot Я получаю сообщение об ошибке: ERR_TOO_MANY_REDIRECTS
.
Найдите конфигурацию nginx ниже:
server {
listen 80 default_server;
server_name www.example.com example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl default_server;
server_name www.example.com example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
location /favicon.ico {
access_log off;
log_not_found off;
}
location /static/ {
root /home/project;
}
location / {
include proxy_params;
proxy_pass http://unix:/run/gunicorn.sock;
}
}
Я думаю проблема в возврат 301; часть, но я искал и не знаю, что не так.
Поскольку вы используете CloudFlare, вам также необходимо включить SSL в настройках CloudFlare. Поскольку у вас есть настоящий сертификат SSL на исходном сервере, вы должны использовать полный SSL (строгий) в настройках CloudFlare.