0

我有一项使用 Scalatra 用 Scala 编写的服务,并在 AWS ECS 上运行,通过 AWS ELB 进行监听。我已将 ELB 配置为 TLS 终结器:端口 443 上的 HTTPS 流量和端口 80 上的 HTTP 流量被路由到 ECS 任务上侦听端口 8080 的服务。

我想将所有 HTTP 流量重定向到 HTTPS。我了解 ELB 将标头X-Forwarded-Proto设置为httphttps根据原始请求。

处理重定向的最佳方法是什么?

4

1 回答 1

1

如果您的 Scalatra 应用程序前面有反向代理,您可以在此处将 http 重定向到 https:https: //aws.amazon.com/premiumsupport/knowledge-center/redirect-http-https-elb/

如果你没有反向代理,你必须在你的 Scalatra 应用程序中做同样的事情。我认为最简单的方法是创建一个 servlet 过滤器,通过检查X-Forwarded-Proto标头将 http 重定向到 https。

于 2018-08-09T04:54:34.423 回答