Heroku:org.postgresql.util.PSQLException:服务器不支持 SSL

Posted

技术标签:

【中文标题】Heroku:org.postgresql.util.PSQLException:服务器不支持 SSL【英文标题】:Heroku : org.postgresql.util.PSQLException: The server does not support SSL 【发布时间】:2020-05-27 04:20:56 【问题描述】:

我们计划将我们的 Spring Boot 应用从 AWS 迁移到 Heroku。作为其中的一部分,今天我们尝试通过 cli 将我们的 war 文件部署到 Heroku 服务器。部署成功,但启动时出现错误org.postgresql.util.PSQLException: The server does not support SSL

我们正在使用 postgresql 数据库并使用 SSL 连接到它。以下是 .yml

的一部分
datasource:
    password: <PASSWORD>
    url: jdbc:postgresql://<HOSTNAME>:5432/<DBNAME>
    username: <USERNAME>
    continue-on-error: true

搜索时找到的解决方案是在连接 URL 的末尾提供?ssl=false,如下所示:

datasource:
    password: <PASSWORD>
    url: jdbc:postgresql://<HOSTNAME>:5432/<DBNAME>?ssl=false
    username: <USERNAME>
    continue-on-error: true

但我们仍然得到同样的错误。我们如何解决这个问题?战争在 AWS 中运行良好。

【问题讨论】:

您使用的是 Heroku Postgres 数据库吗?如果是这样,您使用的是爱好数据库还是他们的生产数据库之一? @RangerRanger 目前数据库指向我们在 AWS 本身中使用的那个 【参考方案1】:

通过更改.yml文件中的连接URL解决了这个问题,如下所示:

datasource:
    password: <PASSWORD>
    url: jdbc:postgresql://<HOSTNAME>:5432/<DBNAME>?sslmode=disable
    username: <USERNAME>
    continue-on-error: true

可以找到更多信息here

【讨论】:

不建议禁用 SSL。 @ceejayoz 谢谢!将确保在生产中启用它。

以上是关于Heroku:org.postgresql.util.PSQLException:服务器不支持 SSL的主要内容,如果未能解决你的问题,请参考以下文章

ENOTFOUND:getaddrinfo ENOTFOUND api.heroku.com api.heroku.com:443 Heroku 创建错误

heroku create ENOTFOUND: getaddrinfo ENOTFOUND api.heroku.com api.heroku.com:443

Heroku:“heroku ps:exec”和“heroku run bash”有啥区别?

如何将heroku cedar-14堆栈应用程序升级到最新的heroku堆栈(即,升级到heroku 18)

heroku 在构建脚本中失败,但 heroku 本地网络很好

Heroku - 为啥在向 Heroku 推送版本时会出现错误 R12(退出超时)?