Ssl 如何在本地使用Play应用程序

Ssl 如何在本地使用Play应用程序,ssl,heroku,playframework,Ssl,Heroku,Playframework,嗨,我是新来的游戏框架和Heroku。我被要求在Heroku上运行一个由其他人编写的游戏应用程序。应用程序附带了一个PostgreSQL数据库 我想知道做这件事最好的方法是什么。我不想每次我做一些更改时都要把我的应用程序推到heroku上才能看到结果 由于远程数据库问题,“play run”命令在本地不起作用。我复制了数据库的URL值并将其放在配置文件中,但它仍然不起作用,因为它说“SSL关闭”,而打开SSL似乎不是一件容易的事情 我该如何做这个项目有什么想法吗 提前谢谢你 要从本地计算机访问H

嗨,我是新来的游戏框架和Heroku。我被要求在Heroku上运行一个由其他人编写的游戏应用程序。应用程序附带了一个PostgreSQL数据库

我想知道做这件事最好的方法是什么。我不想每次我做一些更改时都要把我的应用程序推到heroku上才能看到结果

由于远程数据库问题,“play run”命令在本地不起作用。我复制了数据库的URL值并将其放在配置文件中,但它仍然不起作用,因为它说“SSL关闭”,而打开SSL似乎不是一件容易的事情

我该如何做这个项目有什么想法吗


提前谢谢你

要从本地计算机访问Heroku Postgres数据库,必须使用SSL连接。为此,需要将以下查询参数添加到数据库连接字符串中:

?ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory
另外,当在本地运行时,我建议使用,它可以读取Procfile并使用注入环境变量,就像在Heroku上一样。要设置要使用的环境变量,请创建(但不要签入)一个
.env
文件,其中包含希望应用程序可用的键值对。例如,类似这样的内容:

DATABASE_URL=postgres://user:pass@ec2-107-22-182-123.compute-1.amazonaws.com:5432/db?ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory
foreman run play run
然后,您可以像这样运行应用程序:

DATABASE_URL=postgres://user:pass@ec2-107-22-182-123.compute-1.amazonaws.com:5432/db?ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory
foreman run play run

提示:要使创建
.env
更容易,请签出插件,该插件提供了一个
heroku config:pull
命令,用于将配置从应用程序拉到
.env
文件。当然,您可能希望使用dev数据库进行本地开发,但如果您愿意,这将使您能够投入生产。

感谢您的帮助!我试试看。