AWS Elastic Beanstalk(单个实例):如何为Spring Boot应用程序启用HTTPS?

时间:2020-07-19 22:08:49

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

我最近开始探索AWS,并已在单个Elastic Beanstalk实例上成功部署了Spring Boot应用程序。 下一步,我想让我的应用程序使用HTTPS。鉴于我的应用程序打包为jar,因此我严格遵守以下官方文档:Terminating HTTPS on EC2 instances running Java SE

但是我的应用程序仍然只能使用HTTP。有人设法做到了吗?任何帮助或指向工作示例的链接都将不胜感激。

有关我的应用程序的一些技术细节:这是一个基于Maven的Spring Boot项目。如文档中所述,我已经在项目的根目录下创建了+ .ebextensions +文件夹,其中包含所有配置文件。然后,我使用maven-antrun-plugin将.ebextensions文件夹包含在jar文件中。

预先感谢您的回答。

1 个答案:

答案 0 :(得分:1)

您可能正在使用当前版本的EB,该版本适用于 Amazon Linux 2 (AL2);在问题中未说明使用了什么。您链接的教程使用的是EB的旧版本,该版本适用于 Amazon Linux 1 (AL1)。

随后,它将不起作用。具体来说,教程(nginx.ebextensions/nginx/conf.d/中的.ebextensions/nginx/conf.d/https.conf设置将被忽略。原因是对于AL2,应该using nginx.platform/nginx/conf.d提供.platform/nginx/nginx.conf设置。

还请注意,EB中的AL1和AL2之间存在许多差异,并且在本教程中可能需要进行更多更改才能使其在AL2上运行:

由于在您的问题中未明确指出,您使用的是哪个版本的EB,如果确实是AL2,则可以尝试使用旧版本的AL1运行您的应用程序。这至少可以使您确认它确实有效。然后您可以考虑如何将其移植到AL2。