部署的Keter App使用新的Keter Bundle将用户注销

时间:2013-12-09 07:49:22

标签: haskell yesod

到目前为止,Keter一直很棒。对于我的小玩具项目,我曾经在生产服务器上创建了keter bundle并推送了keter的传入目录,一切正常。

现在我想学习如何设置暂存环境,所以我尝试在临时服务器上编译我的捆绑包(它是生产服务器的映像副本)。当我将此捆绑包推送到我的生产服务器(通过scp)时,它会注销已登录的用户。重新登录后,应用程序本身就可以了。

发生了什么变化:

  • 一些模板代码已经改变,但没有什么大不了的,在
  • 之前在生产服务器上编译时,这些更改很好
  • Yesod的settings.yml已更改为使用登台服务器的IP地址进行开发测试
  • Keter.yaml未被修改。

我做错了什么?为什么Keter关心我的.keter包创建的位置?有没有办法在不中断登录用户的情况下创建这些捆绑包?

谢谢!

1 个答案:

答案 0 :(得分:1)

最有可能的问题是,每次部署应用程序时都会创建一个新的client_session_key文件。相反,您需要生成一次密钥文件并重复使用它。这通常由Yesod scaffolded站点正确处理,但提供了makeSessionBackend的实现,该实现将密钥文件存储在config中。

您当前对makeSessionBackend的实施情况如何?您的密钥包是否包含文件config/client_session_key.aes