Неожиданно несколько дней назад я заметил, что на своем веб-сайте, когда я заполняю форму места, например (POST), а затем выполняю перенаправление для просмотра этого места, сеанс пользователя теряется. Если я обновлю эту страницу, я снова буду подключен. Бывает и в другом виде + редирект.
Это происходит только на рабочем сервере. На постановке (та же конфигурация, что и на производстве) и локально работает нормально.
Мой производственный стек - это Apache, memcache (sessions), PHP, Symfony1.4, MySQL.
Есть идеи, где я должен искать? Апач, что? Memcache?
Спасибо!
редактировать
Я обнаружил ошибку, и тут она ни при чем. Следующий код нарушал его. Я только что это прокомментировал. Все еще не знаю почему, но, по крайней мере, ошибка устранена. Придется спросить у ребят из Symfony.
// clear cache
$cacheDriver = $this->getTable()->getAttribute(Doctrine::ATTR_RESULT_CACHE);
$cacheDriver->deleteByPrefix('tour.'.$this->id);
Я предполагаю одну из двух вещей:
session_start()
пропал, отсутствуетheader('Location', ...)
Я бы использовал Firebug и его Persist
вариант в Net
панель, чтобы проверить, все ли запросы содержат PHPSESSID
cookie или переменная запроса. Предполагая, что это так, я бы проверил, есть ли session_start()
отсутствовал на Location
целевая страница заголовка.