У меня есть приложение, которое я написал на PHP с нуля. Я использую встроенные в PHP функции обработчика сеансов для обработки аутентификации и персистентности пользователя.
При тестировании на сервере разработки все персиковое. Аутентификация, постоянство и т. Д. Работает нормально.
При установке на рабочем сервере все работает нормально вплоть до аутентификации пользователя - когда приложение фактически записывает данные в объект сеанса, внезапно следующий за ним HTTP-запрос полностью зависает именно тогда, когда выполняется session_start ().
Я подозревал, что временные файлы сеанса были заблокированы PHP и никогда не выпускались, поэтому я попытался отследить места, где приложение записывает объект сеанса, с помощью session_write_close()
, но это, похоже, не дало никакого эффекта.
Похоже ли это на проблему блокировки файла или это что-то еще? Я запутался в том, почему session_write_close, похоже, не заботится о проблеме блокировки файла, если это так, и поэтому мне интересно, может ли здесь что-то еще происходить.
Любые возможные мысли или идеи?
Ответ на замечательные предложения Пекки:
- Рабочий сервер - это среда linux. отчеты phpinfo
Linux wynn 2.6.18-164.9.1.el5PAE #1 SMP
- Страница не звонит сама
- Я могу читать / записывать папку и файлы сеанса. Я могу видеть данные аутентификации, которые сериализуются в файлы с попытки аутентификации.