Ответ сеанса с истекшим сроком звучит для меня так, как будто вы выполняете несколько последовательных запросов скручивания к своему приложению. Если это так, и ваше приложение зависит от файлов cookie сеанса, вы можете создать простой текстовый файл, который будет читаться и записываться в сценарий, выполняющий запросы curl, и добавить его в свой код:
$cookie_file = "/the/path/to/your/cookiefile.txt";
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
Измените путь в $cookie_file
на полный путь файловой системы к создаваемому вами текстовому файлу, и curl сохранит файлы cookie сеанса, которые возвращаются с ответами, и использует их в последовательных запросах.
Чтобы это работало, я думаю, вам следует удалить строку
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
потому что это советовало бы curl игнорировать куки в файле.
Кроме того, я думаю, что линия
curl_setopt($ch, CURLOPT_UNRESTRICTED_AUTH, true);
также устарел, потому что вы не предоставляете базовые учетные данные для аутентификации в своем запросе curl.