将 http 重定向到 https AWS Application Load Balancer
Redirect http to https AWS Application Load Balancer
大家好,我将我的 ELB 配置为使用 SSL 证书并且效果很好,但是,我仍然有一个问题,如果用户在 HTTP 下通过端口 80 访问我的网站,网站不会将他们重定向到HTTPS 安全连接。这是我在 Elastic Beanstalk 配置选项卡中看到的 ELB 配置的屏幕截图。感谢您的帮助,谢谢。
根本不是 elb 我只需要添加这段代码:
if (process.env.NODE_ENV === "production" || process.env.NODE_ENV === "awsDevelopmentServer") {
app.use(function(req, res, next) {
// Insecure request?
if (req.get("x-forwarded-proto") == "http") {
// Redirect to https://
return res.redirect("https://" + req.get("host") + req.url);
}```
虽然您似乎通过在您的应用程序中重定向使其工作,但 可以完全在您的 ALB 中执行此重定向。文档:https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html
此功能于 2018 年 7 月发布。https://aws.amazon.com/about-aws/whats-new/2018/07/elastic-load-balancing-announces-support-for-redirects-and-fixed-responses-for-application-load-balancer/
Elastic Beanstalk 可能没有推出自己的配置支持。您可以通过 ebextensions 对其进行配置,但目前最好只在您的应用程序中进行配置。
您可以通过以下方式设置 Application Load Balancer 侦听器:
HTTP 80: default action
IF
Requests otherwise not routed
THEN
Redirect to HTTPS://#{host}:443/#{path}?#{query}
Status code:HTTP_301
事实上,你不能再从elastic beanstalk的界面上做
不要从应用程序中执行此操作,负载解决方案不好。
您现在必须转到 EC2 负载均衡器并按照此处所述更改端口 80 的侦听器:https://medium.com/@j_cunanan05/how-to-redirect-http-to-https-in-amazon-web-services-aws-elastic-beanstalk-67f309734e81
大家好,我将我的 ELB 配置为使用 SSL 证书并且效果很好,但是,我仍然有一个问题,如果用户在 HTTP 下通过端口 80 访问我的网站,网站不会将他们重定向到HTTPS 安全连接。这是我在 Elastic Beanstalk 配置选项卡中看到的 ELB 配置的屏幕截图。感谢您的帮助,谢谢。
根本不是 elb 我只需要添加这段代码:
if (process.env.NODE_ENV === "production" || process.env.NODE_ENV === "awsDevelopmentServer") {
app.use(function(req, res, next) {
// Insecure request?
if (req.get("x-forwarded-proto") == "http") {
// Redirect to https://
return res.redirect("https://" + req.get("host") + req.url);
}```
虽然您似乎通过在您的应用程序中重定向使其工作,但 可以完全在您的 ALB 中执行此重定向。文档:https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html
此功能于 2018 年 7 月发布。https://aws.amazon.com/about-aws/whats-new/2018/07/elastic-load-balancing-announces-support-for-redirects-and-fixed-responses-for-application-load-balancer/
Elastic Beanstalk 可能没有推出自己的配置支持。您可以通过 ebextensions 对其进行配置,但目前最好只在您的应用程序中进行配置。
您可以通过以下方式设置 Application Load Balancer 侦听器:
HTTP 80: default action
IF
Requests otherwise not routed
THEN
Redirect to HTTPS://#{host}:443/#{path}?#{query}
Status code:HTTP_301
事实上,你不能再从elastic beanstalk的界面上做 不要从应用程序中执行此操作,负载解决方案不好。 您现在必须转到 EC2 负载均衡器并按照此处所述更改端口 80 的侦听器:https://medium.com/@j_cunanan05/how-to-redirect-http-to-https-in-amazon-web-services-aws-elastic-beanstalk-67f309734e81