Как настроить nginx для сайта приложения Django по https?
У меня есть приложение, которое я запускаю с несколькими контейнерами docker с помощью файла docker-compose. Два основных контейнера - django_container
и nginx_container
.
Я хочу принудительно использовать https
для моего приложения, но, к сожалению, моя конфигурация Nginx, похоже, не работает. В принципе, мой сервер gunicorn, кажется, работает нормально.
Я могу видеть http://django:8001
изнутри nginx_container
, но не могу видеть http://example.com
ни изнутри, ни снаружи.
Вот содержимое моей конфигурации Nginx
server {
listen 80;
server_name example.com;
rewrite ^ https://example.com$request_uri? permanent;
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/certs/example_com.crt;
ssl_certificate_key /etc/nginx/certs/cert.key;
access_log /log/nginx.access.log main;
location / {
proxy_pass http://django:8001;
proxy_set_header X-Forwarded-Proto $scheme;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
Что я упускаю? Спасибо большое!