启用 ssl 和 Elastic Beanstalk 的 Spring Boot - 找不到文件
Posted
技术标签:
【中文标题】启用 ssl 和 Elastic Beanstalk 的 Spring Boot - 找不到文件【英文标题】:Spring boot with ssl enabled and Elastic Beanstalk - Files not found 【发布时间】:2018-04-26 16:56:17 【问题描述】:我设置了一个启用 ssl = true 的 Spring Boot 应用程序。在我的本地机器上,一切正常且符合预期。我的信任库和密钥库是单独的文件。两者都位于 src/main/resources/static/ssl/ 下。到目前为止,一切都很好。但是,如果我在弹性 beanstalk 上部署我的应用程序,我会得到以下日志:
java.io.FileNotFoundException: /var/app/current/src/main/resources/static/ssl/keystore.p12(没有这样的文件或目录)
为什么我的应用无法识别 elastic beanstalk 中的此路径?我在 application.properties 文件中设置了路径。我必须在任何地方另外设置路径吗?
问题不在于 ssl 不起作用,而是找不到文件。
【问题讨论】:
配置隐藏文件夹.ebextensions
.. 祝你好运!
将它们放在src
以外的文件夹中。运行时您的源代码不会在实例中。
【参考方案1】:
好的,解决方案其实很简单。在应用程序属性文件中,您只需在它之前设置类路径。所以我移动了 src/main/resources 文件夹中的文件,并以这种方式将它们设置在属性文件中:
server.ssl.key-store =classpath:keystore.jks
就是这样。
【讨论】:
以上是关于启用 ssl 和 Elastic Beanstalk 的 Spring Boot - 找不到文件的主要内容,如果未能解决你的问题,请参考以下文章
Elastic Beanstalk 未创建 ssl.conf
为使用 Elastic Beanstalk 和 LightSail 的子域配置 SSL
如何让 SSL 与 Rails、AWS Elastic Beanstalk 和 Cloudflare 一起使用