gpt4 book ai didi

amazon-web-services - 如何使用来自 ACM 的 AWS 证书使用 Amazon EC2 从端口 80 重定向到 443?

转载 作者:太空宇宙 更新时间:2023-11-03 13:49:19 25 4
gpt4 key购买 nike

我目前有一个位于/home/ubuntu 的 EC2 ubuntu 实例中的 react/node 应用程序。该服务器是一个监听端口 443 的 https 服务器。当我访问我的公共(public) DNS 时,它只会在我在我的 dns 之前添加 https://时出现。它按预期工作(没有它,它默认为端口 80 并且应用程序不显示,这是预期的)。

我有一个由亚马逊和亚马逊证书管理器生成的证书。如何将所有流量从端口 80 重定向到端口 443 并将我的亚马逊证书集成到我的实例中?

最佳答案

您可以尝试两个选项。

  • AWS ABL 重定向
  • Nginx

我更喜欢 ALB,因为您不需要在实例级别公开端口,而且您不会在实例上管理任何代理。

If you are using ALB, you can redirect to https from LB rule. A rule has to have a condition and an action. Since we want to redirect all traffic that comes in on port 80 to the same URI, just with HTTPS instead, our condition should be simply “all”. Unfortunately you can’t just put a single asterisk in for the condition, the closest I’ve been able to come up with is *.example.com, where xample.com is whatever your domain is.

enter image description here

aws-alb-redirects

如果你没有使用 ALB,那么你可以试试 Nginx。

  • 您需要在服务器上安装 Nginx
  • 在您的实例中允许端口 80
  • 放在nginx.conf中的配置下面

这将重定向所有

server {
listen 80 default_server;

server_name _;

return 301 https://$host$request_uri;
}

这将重定向特定站点。

server {
listen 80;

server_name example.com;
return 301 https://example.com$request_uri;
}

redirect-http-to-https-nginx

你的问题的另一个澄清

How to integrate my amazon certificate into my instance?

不可以,您不能在 EC2 实例中使用 AWS 证书,您需要将 LB 放在实例顶部才能使用 AWS 证书。

关于amazon-web-services - 如何使用来自 ACM 的 AWS 证书使用 Amazon EC2 从端口 80 重定向到 443?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58504558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com