Я пытался автоматически перенести все запросы по протоколу https с помощью nginx в django в экземпляре ec2, но я не могу это сделать ... вот мой файл nginx .., пожалуйста, предложите мне проблему.
Файл nginx
server{
listen 443 ssl;
server_name www.priyamarya.com;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/ubuntu/project/aryapriyam/;
}
location / {
include proxy_params;
proxy_pass http://unix:/home/ubuntu/project/aryapriyam/project.sock;
}
}
server{
listen 80;
server_name priyamarya.com;
return 301 https://www.priyamarya.com;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/ubuntu/project/aryapriyam/;
}
location / {
include proxy_params;
proxy_pass http://unix:/home/ubuntu/project/aryapriyam/project.sock;
}
}
Я также добавил это в settings.py
settings.py
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
SECURE_SSL_REDIRECT =True
SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True
gunicorn.service
[Unit]
Description=gunicorn daemon
After=network.target
[Service]
User=ubuntu
Group=www-data
WorkingDirectory=/home/ubuntu/project/aryapriyam
ExecStart=/home/ubuntu/project/venv/bin/gunicorn --access-logfile - --
workers 3 --chdir /home/ubuntu/project/aryapriyam/ --bind
unix:/home/ubuntu/project/aryapriyam/project.sock
project.wsgi:application
[Install]
WantedBy=multi-user.target
я также установил в своей размещенной зоне тип записи A псевдоним, предоставленный балансировщиком нагрузки elb.
Я много чего пробовал, например, возвращал https://sitename и создавал другой блок сервера для обоихпротоколы, но затем начинается цикл между запросами.Вот почему я публикую код, с которого я изначально начал.Я много искал, но ничего не помогает в отношении nginx и django, пожалуйста, помогите. Я хочу, чтобы все мои запросы также проходили через https.