在 AWS EC2 上将 SSL 与 nginx 和 Ubuntu 一起使用不起作用

Using SSL with nginx and Ubuntu on AWS EC2 is not working

我正在努力为 Ubuntu 上的 EC2 实例设置 SSL,我在 Amazon AMI 上没有任何问题,但我在 Ubuntu:[=16 上遇到了一些问题=]

  1. ✅ 在安全组中为 SSL 添加了 443 端口
  2. ✅ 通过 certbot
  3. 生成了 letsencrypt 密钥
  4. ✅ 将 http 请求重定向到 nginx.conf
  5. 中的 https
  6. ✅ 重启nginx

当我通过 https 访问我的网站时出现超时,可以帮助我调试这个问题?

这是我的 nginx.conf:

server {
  listen 80;
  listen [::]:80;
  server_name mydomain.com;
  return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;
  listen [::]:443 ssl;
  server_name mydomain.com;
  root /home/ubuntu/myproject;

  add_header Strict-Transport-Security "max-age=15768000";
  ssl_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem;

  include /etc/letsencrypt/options-ssl-nginx.conf;
  ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

  location / {
    proxy_pass http://127.0.0.1:8000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forward-Proto http;
    proxy_set_header X-Nginx-Proxy true;
    proxy_redirect off;
  }
}

注意:当我在 nginx 中禁用重定向时,一切都通过 HTTP 工作。

正如你所说的这个配置没问题,我已经终止了一个实例并重新安装了 nginx,现在可以正常工作了。