来自Play! API遵循以下内容:可以使用application.conf中的以下配置建立数据库连接:
db.default.driver=org.postgresql.Driver
db.default.url="jdbc:postgresql://someDomain.com/someDatabase"
db.default.user=user
db.default.password=password
但是当我在网址中输入&ssl=true
时,它没有注册,我收到以下错误:
引起:org.postgresql.util.PSQLException:致命:没有pg_hba.conf 主机“xx.xx.xx.xx”,用户“user”,数据库的条目 “test& ssl = true& sslfactory = org.postgresql.ssl.NonValida”,SSL off
有什么方法可以强制玩!通过.conf文件使用SSL连接?
更新:我忘了提到我使用psql
命令从控制台成功登录尝试。不知何故,它必须是不能理解ssl参数的Play。
谢谢,
答案 0 :(得分:9)
Postgresql报告database "test&ssl=true&sslfactory=org.postgresql.ssl.NonValida"
作为您尝试连接的数据库名称,表明JDBC驱动程序没有将该后缀放在最后并处理它,因为您需要它。
您可能需要在第一个参数之前使用?
,例如普通网址:
jdbc://db.example.com/test?ssl=true
答案 1 :(得分:0)
问题似乎是Postgres端的配置?
从文档中我怀疑db创建的默认pg_hba.conf文件不包含SSL条目,您需要手动添加它。