数日前に突然、自分のWebサイトで、たとえば場所のフォーム(POST)に入力し、その場所を表示するようにリダイレクトすると、ユーザーセッションが失われることに気付きました。そのページを更新すると、再び接続されます。別の形式+リダイレクトでも発生します。
これは本番サーバーでのみ発生します。ステージング(本番環境と同じ構成)で、ローカルは正常に機能しています。
本番環境での私のスタックは、Apache、memcache(sessions)、PHP、Symfony1.4、MySQLです。
私がどこを見るべきかについて何か考えはありますか? Apache、何? Memcache?
ありがとう!
編集
私はエラーを見つけました、そしてそれはそれとは何の関係もありません。次のコードはそれを壊していました。コメントしました。理由はまだわかりませんが、少なくともバグは出ています。 symfonyの人に聞いてみます。
// clear cache
$cacheDriver = $this->getTable()->getAttribute(Doctrine::ATTR_RESULT_CACHE);
$cacheDriver->deleteByPrefix('tour.'.$this->id);
私は2つのことのうちの1つを推測しています:
session_start()
がありませんheader('Location', ...)
を実行するとリクエスト変数が失われましたPersist
パネルでFirebugとそのNet
オプションを使用して、すべてのリクエストにPHPSESSID
Cookieまたはリクエスト変数が含まれているかどうかを確認します。そうだとすれば、Location
ヘッダーのターゲットページにsession_start()
がないかどうかを確認します。