Ant*_*nyR 6 postgresql ssl heroku vapor
我正在尝试连接到我的 Heroku PostgreSQL 数据库,但出现以下错误:
cannotEstablishConnection("FATAL: no pg_hba.conf entry for host \"37.167.93.189\", user \"clpnkpyttmdtyq\", database \"d3h6147v73mgtu\", SSL off\n")
Run Code Online (Sandbox Code Playgroud)
我知道 Heroku postgres 数据库需要使用 SSL 连接,但我不知道如何在我的Droplet对象上配置连接。
这是我的postgresql.json配置文件:
{
"host": "ec2-54-163-224-108.compute-1.amazonaws.com",
"user": "clpnkpyttmdtyq",
"password": "99201aa07c48e18e7bdf210937857b85bee37cd8d8cb904381b1ddff934c7a4f",
"database": "d3h6147v73mgtu",
"port": 5432
}
Run Code Online (Sandbox Code Playgroud)
也许有ssl我不知道的参数?
我如何添加VaporPostgresSQLProvider:
let drop = Droplet()
// Tell the droplet to use our SQL provider service
try drop.addProvider(VaporPostgreSQL.Provider.self)
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
当我尝试使用本地 postgres 数据库时,它可以工作,因为它不需要 ssl 连接。
这个过程让我个人付出了很大的代价,这个解决方案对我有用,试试这个
在文件Config > Secrets > postgresql.json添加此配置(用于本地或远程,如果此文件不存在,请创建此文件)
{
"host": "127.0.0.1",
"user": "your_user_pc",
"password": "",
"database": "your_user_pc",
"port": 5432
}
Run Code Online (Sandbox Code Playgroud)
用户可以从终端获取它
$ cd ~
Run Code Online (Sandbox Code Playgroud)
在您的文件Procfile(位于您的项目中,通过查找器显示)编辑并添加此代码
web: App --env=production --workdir="./"
web: App --env=production --workdir=./ --config:servers.default.port=$PORT --config:postgresql.url=$DATABASE_URL
Run Code Online (Sandbox Code Playgroud)
现在您可以将应用程序重新启动到heroku ,您应该考虑从 Heroku的界面正确配置服务器及其所有凭据和Postgresql的附加组件
注意:不要忘记您所做的每项更改,运行“vapor build”或“vapor build --clean”
| 归档时间: |
|
| 查看次数: |
984 次 |
| 最近记录: |