犬ターネット

appfog + PHP 環境でセッションを使うには

2012-12-14 appfog

appfog + PHP 環境だとファイルベースのセッション管理ができない。

でも PHPのRedis拡張 が使えるようなので、ものは試しで Redis をセッションストアとして使ってみる。

まずは、WEBコンソール( https://console.appfog.com/apps/[app名] )から Redis 追加しとく。

以下コードで Redis のホスト名やらポート番号やら取れるので、ini_set で設定して session_start() かませばOK、

と思ったら「Failed to write session data」ていうエラーが出まくってセッション書き込みに失敗する。なんでだろ

結局、以下のような独自セッションハンドラを作った。PREFIXとTIMEOUTハードコードしてるけどコンストラクタ引数に加えたほうがいいかも。

で、こんな感じで呼び出したらうまくいった。

twitterの片思いとかとるやつ作ったときの工夫みたいなもん
あー