2015-06-22 35 views
3

我得到这个错误运行在生产模式下播放2.4服务器:配置错误[应用程序密码不正确]

play.api.UnexpectedException: Unexpected exception[ProvisionException: Unable to provision, see the following errors: 

1) Error in custom provider, @6mh5cjo5l: Configuration error 
    while locating play.api.libs.CryptoConfigParser 
    while locating play.api.libs.CryptoConfig 

... 

Caused by: play.api.PlayException: Configuration error[Application secret not set] 

如何解决?

回答

8

默认播放模板使用下列内容:

play.crypto.secret="changeme" 
在需要改变在生产中使用的 application.conf

。游戏提供了一个工具来为你生成一个随机秘密:

./activator playGenerateSecret 

与您可以再填充作为环境变量:

APPLICATION_SECRET=... 

conf/application.conf确保符合以下条件:

play.crypto.secret="changeme" 
play.crypto.secret=${?APPLICATION_SECRET} 

其中Play documentation解释为:

该配置的第二行设置秘密来自 环境变量,名为APPLICATION_SECRET,如果设置了这样一个环境变量 ,否则它将保留上一行的 保持不变。

然后错误将消失。

+1

男人,你是天才。我正在解决这个问题约10小时...我在Heroku上部署了一个应用程序,并且没有将crypto.key设置为不同的内部错误。使用“./activator playGenerateSecret”从你的项目文件夹中生成一个。谢谢 !!! –

+0

@ S.Birklin真的很高兴听到这有助于。 :) – bjfletcher

相关问题