EC2 Ubuntu NGINX配置HTTPS重定向给我错误:ERR_TOO_MANY_REDIRECTS

twknab

背景

我有一台在AWS EC2实例(Node / Express应用程序)上运行的Ubuntu计算机,使用证书管理器和负载均衡器设置了SSL证书。对于直接使用https(例如)直接访问我的网站,此方法效果很好https://example.com但是,使用会http导致连接不安全。

检查whynopadlock.com,我被告知我的Web服务器未强制使用HTTPS。使用NGINX作为我EC2实例的私有IP的反向代理来设置我的Web服务器。我已经四处搜寻,似乎找不到像我这样的合适例子,尽管我试图拼凑出我能找到的东西。

当我尝试设置强制HTTPS重定向时,我得到了ERR_TOO_MANY_REDIRECTS

之前:原始Nginx配置

server {
    listen 80;
    location / {
        proxy_pass http://{{MASKED_EC2_INSTANCE_PRIVATE_IP_FOR_POST}}:8000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

注意:此配置允许https://example.com正常加载,但是如果使用http://example.com导航到该站点并导致不安全连接,则不会进行重定向

之后:添加HTTPS重定向后的NGINX Config

# HTTP
server {
    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  localhost;
    return 301   https://$host$request_uri;
}

# HTTPS
server {
    listen       443 default_server;
    listen       [::]:443 default_server;
    server_name  localhost;

    location / {
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;
        proxy_pass https://{{MASKED_EC2_INSTANCE_PRIVATE_IP_FOR_POST}}:8000;
        proxy_set_header X-Forwarded-Proto https;
    }
}

问题

现在我看到,当我使用http加载域时,我已成功重定向到https,但是却收到错误消息ERR_TOO_MANY_REDIRECTS

谁能帮助我了解我所缺少的内容或配置中可能做错了吗?

马辛

由于使用的是ALB,因此可以将HTTP重定向到ALB本身上的httpsAWS提供了如何进行设置的指南:

如何使用应用程序负载平衡器将HTTP请求重定向到HTTPS?

该过程涉及创建http侦听并向其添加重定向操作,而不是常规转发规则。这样,您无需对实例执行任何更改,因为所有事务均由ALB负责。

另外,由于您使用的是AWS Certificate Manager,因此您必须使用ALB,因为不能在实例上使用ACM SSL证书。ACM只能在负载均衡器(ALB,CLB或NLB),CloudFront发行版或API网关上使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ubuntu服务器“ sudo”错误AWS EC2

来自分类Dev

https为AWS EC2 Ubuntu实例引发ERR_SSL_PROTOCOL_ERROR

来自分类Dev

尝试使用ec2 apache2 ubuntu将所有网络流量定向到https时,如何解决“重定向过多”错误?

来自分类Dev

如何在我的ec2中的ubuntu中配置新贵[node.js]

来自分类Dev

在AWS EC2 VPC中的ubuntu 13.10上安装和配置Snort,Barnyard2

来自分类Dev

在AWS EC2 VPC中的ubuntu 13.10上安装和配置Snort,Barnyard2

来自分类Dev

在ubuntu 20.04 AWS EC2节点上安装Nginx时出现问题

来自分类Dev

使用Ubuntu 14.04的EC2上的flask-mail SMTPServerDisconnected错误

来自分类Dev

ec2 ubuntu 服务器 18.04 上的 Cloud-init 相关错误

来自分类Dev

robomongo aws ec2 ubuntu

来自分类Dev

Amazon EC2 Ubuntu安装GCC

来自分类Dev

在ubuntu ec2上安装bcrypt

来自分类常见问题

Amazon EC2:Ubuntu(PV)或Ubuntu(HVM)

来自分类Dev

Amazon EC2上的Ubuntu 12.04:在下次重启时会检查/ dev / xvda1是否存在错误?

来自分类Dev

Amazon EC2上的Ubuntu 12.04:在下次重启时会检查/ dev / xvda1是否存在错误?

来自分类Dev

我如何将此AWS EC2 ubuntu 18实例的大小从16GB调整为100GB

来自分类Dev

我可以合法使用Ubuntu Server在Amazon EC2上创建商业Web应用程序吗?

来自分类Dev

如何从 ec2 实例重定向到我的 ip

来自分类Dev

在Amazon EC2 Ubuntu实例上安装Glassfish 4

来自分类Dev

boto EC2查找所有Ubuntu映像?

来自分类Dev

尝试在ubuntu Amazon EC2实例上安装gcc

来自分类Dev

Crontab无法在AWS ec2 Ubuntu实例上运行

来自分类Dev

unable to pass the user-data to the ec2 ubuntu instance

来自分类Dev

ssh到Amazon EC2上的Ubuntu实例

来自分类Dev

尝试在ubuntu ec2实例上安装某些东西

来自分类Dev

在Ubuntu EC2实例上百胜安装失败

来自分类Dev

在Amazon EC2 Ubuntu实例上安装Glassfish 4

来自分类Dev

EC2 ubuntu实例关闭时会发生什么?

来自分类Dev

Crontab无法在AWS ec2 Ubuntu实例上运行

Related 相关文章

  1. 1

    Ubuntu服务器“ sudo”错误AWS EC2

  2. 2

    https为AWS EC2 Ubuntu实例引发ERR_SSL_PROTOCOL_ERROR

  3. 3

    尝试使用ec2 apache2 ubuntu将所有网络流量定向到https时,如何解决“重定向过多”错误?

  4. 4

    如何在我的ec2中的ubuntu中配置新贵[node.js]

  5. 5

    在AWS EC2 VPC中的ubuntu 13.10上安装和配置Snort,Barnyard2

  6. 6

    在AWS EC2 VPC中的ubuntu 13.10上安装和配置Snort,Barnyard2

  7. 7

    在ubuntu 20.04 AWS EC2节点上安装Nginx时出现问题

  8. 8

    使用Ubuntu 14.04的EC2上的flask-mail SMTPServerDisconnected错误

  9. 9

    ec2 ubuntu 服务器 18.04 上的 Cloud-init 相关错误

  10. 10

    robomongo aws ec2 ubuntu

  11. 11

    Amazon EC2 Ubuntu安装GCC

  12. 12

    在ubuntu ec2上安装bcrypt

  13. 13

    Amazon EC2:Ubuntu(PV)或Ubuntu(HVM)

  14. 14

    Amazon EC2上的Ubuntu 12.04:在下次重启时会检查/ dev / xvda1是否存在错误?

  15. 15

    Amazon EC2上的Ubuntu 12.04:在下次重启时会检查/ dev / xvda1是否存在错误?

  16. 16

    我如何将此AWS EC2 ubuntu 18实例的大小从16GB调整为100GB

  17. 17

    我可以合法使用Ubuntu Server在Amazon EC2上创建商业Web应用程序吗?

  18. 18

    如何从 ec2 实例重定向到我的 ip

  19. 19

    在Amazon EC2 Ubuntu实例上安装Glassfish 4

  20. 20

    boto EC2查找所有Ubuntu映像?

  21. 21

    尝试在ubuntu Amazon EC2实例上安装gcc

  22. 22

    Crontab无法在AWS ec2 Ubuntu实例上运行

  23. 23

    unable to pass the user-data to the ec2 ubuntu instance

  24. 24

    ssh到Amazon EC2上的Ubuntu实例

  25. 25

    尝试在ubuntu ec2实例上安装某些东西

  26. 26

    在Ubuntu EC2实例上百胜安装失败

  27. 27

    在Amazon EC2 Ubuntu实例上安装Glassfish 4

  28. 28

    EC2 ubuntu实例关闭时会发生什么?

  29. 29

    Crontab无法在AWS ec2 Ubuntu实例上运行

热门标签

归档