【发布时间】:2012-08-29 16:29:24
【问题描述】:
我正在使用 PHP 制作 Heroku FB 应用程序,每当我执行 git push 时,我的用户会话都会被破坏。为什么会发生这种情况?更重要的是,如何防止这种情况发生?
【问题讨论】:
我正在使用 PHP 制作 Heroku FB 应用程序,每当我执行 git push 时,我的用户会话都会被破坏。为什么会发生这种情况?更重要的是,如何防止这种情况发生?
【问题讨论】:
您需要将会话存储在数据库中。您可以将它们存储在 Postgres 或 Redis 之类的东西中。这些将在部署期间保留。
【讨论】:
另一个没有提到的选项是使用 Memcached 来存储会话。您可以使用 heroku 插件 Memcachier (https://addons.heroku.com/memcachier)。
要配置 php 以使用 memcached 会话处理程序,请查看扩展程序的手册http://php.net/manual/en/memcached.sessions.php。基本上你设置 php.ini 指令:
session.save_handler = memcached
session.save_path = "localhost:11211"
将 save_path 替换为安装插件时提供的 Memcachier 地址和端口。
【讨论】:
我使用 AppFog,Memcachier 现在支持 SASL,但不知道如何继续。
现在缺少的是身份验证,我不知道该怎么说
我找到了这个,但我不知道它是否会起作用以及如何使用
http://php.net/manual/en/memcached.setsaslauthdata.php
pd:我无法在 appfog 中访问 php.ini,所以我需要通过 htaccess 执行此操作,你能给我一个如何在 htaccess 中执行此操作的示例吗?
https://docs.appfog.com/languages/php#php_ini
谢谢
【讨论】: