Django+nginx+gunicorn проблемы с Cerbot для перехода на HTTPS

В настоящее время я развертываю свое приложение django на сервере AWS Lightsail Debian 10.8. Оно прекрасно работает с http. Поэтому я хотел перевести свое приложение на HTTPS и получить SSL сертификат. Я следовал двум руководствам по этому вопросу :

После выполнения всех этих действий ничего больше не работает даже в HTTP, сайт недоступен... Вот файл конфигурации в /etc/nginx/sites-available.

 server {
  server_name 13.38.76.96 www.zlochteam.com;

 location / {
        include proxy_params;
        proxy_pass http://localhost:8000/;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/www.zlochteam.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/www.zlochteam.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

}

 server {
    if ($host = www.zlochteam.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


  listen 80;
  server_name 13.38.76.96 www.zlochteam.com;
    return 404; # managed by Certbot


}

Я хотел узнать, сталкивался ли кто-нибудь с такой же проблемой и как он ее решил.

Спасибо!

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

server {
    listen 80;
    listen [::]:80;
    ...

Похоже, что certbot теперь требует также ipv6.

Http сломался, потому что certbot добавил перенаправление return 301 https://$host$request_uri;

Вам следует протестировать конфиг командой nginx -t, а затем перезагрузить конфиг nginx -s reload.

Решено

Мне просто пришлось разрешить подключение с порта 443 на AWS LightSail, такая глупая ошибка...

Здесь вам нужно добавить HTTPS соединение, во вкладке Networking.

AWS LightSail Networking part

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