[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: ему PHP иногда не видит входные параметры?
ArtemG
Привет!

У меня возникла интересная проблема, которую я никак не могу понять.

Наш вебсайт использует собственный модуль для управления сессиями пользователя. Юзеру выдается SID, копия хранится в базе.

Каждая ссылка содержит SID, а также все формы содержат SID. Иначе программа подумает, что пользователь не авторизирован, и выдаст новый SID.

Еще, я только что заметил, что программа сохраняет кукисы с сидом, хотя программа прекрасно работает и без них. Я протестировал в IE на самом высоком уровне безопасности и отключил кукисы во время теста.

Проблема в том, что иногда пользователя выбрасывает из программы - logout.

Мы попробовали разобраться в проблеме и обнаружили, что когда происходит логаут, PHP не получает никаких данных на входе.

$_POST, $_COOKIE и даже php://input пустые!

Однако, лог файлы отчетливо показывают, что URL содержит SID.

Эта проблема не была критична до не давнего времени. Мы начали использовать AJAX для некоторых форм и сразу же начали получать множество жалоб от пользователей. Похоже на то, что AJAX запросы увеличили интенсивность возникновения данной ошибки. Это довольно раздражительно для пользователей, когда они теряют все данные в середине ввода (на тех формах, которые используют AJAX).

Вебсайт постоянно используют 20-40 пользователей. Аджакс формы могут генерировать 1-3 запроса в 1-2 секунды максимум. Так что Apache может получить 100 запросов в одну секунду - но это МАКСИМУМ, я думаю.

Вебсервер использует SSL и mod_rewrite редиректит все запросы на HTTPS:// . Может это как то связано в mod_rewrite?

Я очень благодарен за любую возможную помощь по этой проблеме.
jetistyum
сложно абстрактно понять в чем может быть проблема в кастомном движке сессий, настроенном на кастомном сервере.
Zeelov
Я точно не понял, сессии в базах хранятся? В общем не суть. В моей проге в самом начале ее, до всяких основных кодов, в блоке авторизации происходит проверка валидности юзера, если не валиден, суперглоб.массивы чистятся. Проверьте свой код авторизации, а именно блок, где происходит нормальный выход юзера (например по ссылке "Выход").
Zeelov
И проверьте уникальность файлов сессий (если сессии на файлах). Если на базах, то проверьте механизм удаления/чистки мусора
Guest
А какая версия PHP?


















<a href=http://www.de.7searchsoft.com/ >Software zum Download</a>
ArtemG
По ошибке SID был в кукисах, а задумывали только в URL передовать. Каким-то образом возникал конфликт. Выкинули куки - все нормально. Хотя изредка $_POST все же продолжает приходить пустым.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.