2016-11-25 10 views
2

IIS 8.5でPHP 5.6が動作しています。私は$_SESSIONcookie_domainが適切に自分のドメインとして、php.iniで設定されている、いくつかの要素がありますが、各ページの負荷の異なる文字列をsession_id()持っていることがわかり、それによってPHPセッションのリセット

echo '<p>'.sizeof($_SESSION).' - '.session_id().' - '.ini_get('session.cookie_domain').'</p>';

:私は、このテスト・ログを使用していました。すべてのページの読み込み時にsession_start()が呼び出されています。

私はセッションを永続化するために何ができるのですか?

$sessionfile = ini_get('session.save_path') . '/' . 'sess_'.session_id();は、セッションファイルの場所を示します。私はそれを開くことができ、データはそこにあります。実際には、各セッションの作成ではなく、ファイルを保存するときには何かがあります。

一部のIIS設定または一部のASPがセッションをリセットしている可能性はありますか?

+0

あなたは 'session_start();の後にこのコードを呼び出していますよね? – OptimusCrime

+0

はい、session_start()は最初に実行されるものの1つです。 – Hikari

答えて

0

この問題は、IISにセッションを格納する権限がない場合に発生します。私は長い間、同じ問題を抱えていました。アクセス許可を修正するか、セッションパスが私の問題を解決しました。

+0

私はそれを手に入れます。しかし、セッションファイルを見つけて開くことができ、データがそのファイルに保存されているので、それは問題ではないと私は信じています。何かがセッションをリセットしています。おそらくその参照を保存しているクッキーです。 – Hikari

関連する問題