Гарантированный способ потерять сессию в CakePHP 1.2RC3

Как исправить ситуацию я пока не придумал. Видимо, связано с желанием разработчиков улучшить защищенность системы.

Для воспроизведения потребуется либо не очень быстрый сервер, либо сильно нагруженный сервер (хорошо бы еще добавить какой-нибудь хитрый запрос к Модели на выборку с JOIN’ами из большой таблицы — чтоб времени на запрос ощутимо уходило), или клиент на достаточно медленном канале.

Алгоритм следующий:

  1. Запускаем сессию и отдаем пользователю Вид (View) с двумя ссылками, например, на Controller1/action1 и на Controller2/action2
  2. Кликаем по первой ссылке
  3. Не дожидаясь загрузки страницы с видом Controller1/action1, кликаем по второй ссылке
  4. Сессия потеряна

Досконально я не проверял, но по результатам рассмотра файлов с сессиями в директории /tmp, думаю, что AuthComponent или еще какой, например RequestHandler виноваты.

Update: Как и предполагалось, это не бага, а фича для секьюрности. Лечится [вроде бы] сменой установки Security.level (в конфигурационном файле) с ‘high‘ на ‘medium‘.