У меня есть поставщик Cs Cart Multi. Я обновил свой PHP 5.5 до PHP 7.0. И есть ошибка:
865 FastCGI отправлено в stderr: «Сообщение PHP: Предупреждение PHP: session_start(): Обратный вызов сеанса ожидает истинного/ложного возвращаемого значения в /var/www/cscart/app/Tygh/Session.php в строке 341 Сообщение PHP: Неустранимая ошибка PHP: session_start(): не удалось инициализировать модуль хранения: пользователь (путь: /var/lib/php/sessions) в /var/www/cscart/app/Tygh/Session.php в строке 341 "при чтении заголовка ответа от восходящего потока, клиент : 49.189.136.11, сервер:
Каталог /var/lib/php/sessions имеет 0777. На других сайтах сессия работает нормально.
Файл Session.php:
/**
* Starts session
* @param array $request Request data
*/
public static function start($request = array())
{
// Force transfer session id to cookies if it passed via url
if (!empty($request[self::$_name])) {
self::setId($request[self::$_name], false);
} elseif (empty($_COOKIE[self::$_name])) {
self::setId(self::_generateId());
}
session_name(self::$_name);
session_start();
// Session checker (for external services, returns "OK" if session exists, empty - otherwise)
if (!empty($request['check_session'])) {
die(!empty($_SESSION) ? 'OK' : '');
}
// Validate session
if (!defined('SKIP_SESSION_VALIDATION')) {
$validator_data = self::getValidatorData();
if (!isset($_SESSION['_validator_data'])) {
$_SESSION['_validator_data'] = $validator_data;
} else {
if ($_SESSION['_validator_data'] != $validator_data) {
session_regenerate_id();
$_SESSION = array();
}
}
}
// _SESSION superglobal variable populates here, so remove it from global scope if needed
if (Bootstrap::getIniParam('register_globals')) {
Bootstrap::unregisterGlobals('_SESSION');
}
}
Сервер: NGINX, PHP7.0-FPM