Всем привет!
Вообщем есть платёжная система, когда пополняешь баланс на сайте site.com, на сайте платежной системы ты либо отменяешь платёж или подтверждаешь и после появляется кнопка перехода на site.com.
На самом деле там отправляется форма с данными о платеже.
Так вот при отправке этой формы на site.com крашится сессия, я не могу понять как такое возможно.
Я решил отправить с любого рандомного сайта, отправить пустую форму на site.com и происходит тоже самое.
Я не понимаю как это вообще происходит и почему ?
И как можно такое исправить ?
И заметил вот что, идентификатор сессии в браузере клиента меняется на новый при отправке формы, но физически файл со старой сессией на диске существует, но создается почему-то новый идентификатор.
Возможно это связано с функцией старта сессии.
Хотя все равно не понятно.
Не важно откуда я шлю форму, ведь кука не менялась, браузер должен слать старый идентификатор сессии при отправке формы.
function startSession()
{
session_set_cookie_params(0, '/', '.site.com');
if (isset($_COOKIE[session_name()]) AND preg_match('/^[-,a-zA-Z0-9]{1,128}$/', $_COOKIE[session_name()])) {
session_start();
} elseif (isset($_COOKIE[session_name()])) {
unset($_COOKIE[session_name()]);
session_start();
} else {
session_start();
}
}
Технологии: php, nginx