SSL-сертификаты и https для сайта django, размещенного на AWS

У меня есть сайт django, размещенный на elastic beanstalk. Я получил AWS SSL сертификат и он был связан с балансировщиком нагрузки 443 HTTPS портом.

В моем конфигурационном файле у меня есть:

MIDDLEWARE = [
...
    "django.middleware.csrf.CsrfViewMiddleware",
]

CSRF_COOKIE_HTTPONLY = False
SESSION_COOKIE_HTTPONLY = True

При такой настройке я могу войти на сайт, но браузер отображает "not secure" в адресной строке, и если я добавляю 'https://' к урлам, я получаю страницу, на которой говорится, что соединение не является приватным.

Если я добавлю

SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True

Затем становится невозможным войти в систему (страница входа просто перезагружается) или, если я перешел в браузер инкогнито, я получаю сообщение 'CSRF verification failed. Запрос прерван." сообщение.

Прошу прощения за длинный вопрос, я просто попытался включить все детали, которые могут быть важны

В settings.py Добавьте IP и домен в список ALLOWED_HOSTS. Вы можете добавить *, но это не рекомендуется. * означает, что здесь разрешены все хосты.

ALLOWED_HOSTS = ['your_ip']

Я неправильно настроил слушателя балансировщика нагрузки на порт 4443. Порт экземпляра и протокол экземпляра были 443 и https, тогда как они должны быть 80 и http

Вернуться на верх