Elastic Beanstalk和Spring Boot将HTTP重定向到HTTPS

时间:2019-05-02 23:20:39

标签: spring-boot https amazon-elastic-beanstalk

我有一个spring boot应用程序,其中已编译的JAR被部署到弹性beantalk。

我有一个负载平衡器实例。在此实例上,我在端口443上有一个侦听器,用于在端口80上为HTTPS到EC2实例提供服务。(HTTPS在负载均衡器处终止)。

在EB中,我配置了相同的负载平衡器侦听器。当我使用HTTPS向服务器发出请求时,一切都很好。

我想知道如何在确保任何HTTP请求转发到HTTPS的同时保留此功能,以便负载均衡器实例可以使用HTTPS处理它。

1 个答案:

答案 0 :(得分:1)

Elastic Beanstalk使用nginx作为反向代理,将您的应用程序映射到端口80上的Elastic Load Balancing负载均衡器。ElasticBeanstalk提供了默认的nginx配置,您可以使用自己的配置扩展或完全覆盖。

要扩展Elastic Beanstalk的默认nginx配置,请将.conf配置文件添加到应用程序源包中名为.ebextensions / nginx / conf.d /的文件夹中。 Elastic Beanstalk的nginx配置自动在此文件夹中包含.conf文件。

引用link

将以下代码段添加到 .ebextensions / nginx / nginx.conf 并重新部署

server {
    listen 80 default_server;

    server_name _;

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