暗号化されたデータベースをデフォルトのセッションタイプとして使用するように私の開発者Kohanaサーバをセットアップしました。また、これをAuthと組み合わせて使用してユーザー認証を実装しています。Kohana 3.2 - 新しいページリクエストでデータを失うデータベースセッション
私のユーザーは正しく認証でき、認証キーはセッションに保存されています。私はまた、ログイン手続き中にユーザーのfirstnameとbusinessnameのような追加データを保存しています。
私のログイン機能は、ユーザーのダッシュボードにユーザーをリダイレクトする準備ができたとき、私はできるだけ早く私は別のページにユーザーをリダイレクトするよう$session::instance()->as_array();
(Array ([auth_user] => NRyk6lA8 [businessname] => Dudetown [firstname] => Matt)
)
を行うときに、正しく、すべてのデータを見ることができますよ、$session::instance()->as_array();
は空です。
Session :: instance()オブジェクトをダンプすると、セッションIDがまだ同じであることがわかります。
データベーステーブルを見ると、セッションレコードが保存されず、セッションテーブルが空です。
私のbootstrap.phpのが含まれています。誰もがいずれかを持っている場合、私は..答えのためのハイとローの見てきた
return array(
'database' => array(
'name' => 'auth_user',
'encrypted' => TRUE,
'lifetime' => 24 * 3600,
'group' => 'default',
'table' => 'sessions',
'columns' => array(
'session_id' => 'session_id',
'last_active' => 'last_active',
'contents' => 'contents'
),
'gc' => 500,
),
);
:
Session::$default = 'database';
Cookie::$salt = 'asdfasdf';
Cookie::$expiration = 1209600;
Cookie::$domain = FALSE;
を、私のsession.php設定ファイルがどのように見えます提案、私はすべての耳です!
ありがとうございます!
ありがとうございましたSinan、 はい、私は実際にKohanaフォーラムであなたの投稿を見て、Cookie :: $ domain = FALSEを実装しましたが残念ながらうまくいきませんでした。 私はもともと私の '.domain.tld'で試してみましたが、サーバインスタンスがサブディレクトリにインストールされていて、正常に動作しているかどうかは分かりませんでした。 私は移行サーバーにすぐに導入するつもりですので、まもなくご提案を試すことができます。 あなたのご意見ありがとうございます。このスレッドに私の発見と回答します ありがとうございました! – reado
驚くばかり!暗号化の設定が整理されたので、ドメインを正しく設定することで、すべてのセッションIDを正しく動作させることができました。 すべて正常に動作しています...ありがとうございます!このヒントは私を助けました! – reado