PHP пустые файлы сессии, сгенерированные системой входа

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

На данный момент мы создаем сеанс, когда пользователь либовходит в или жерегистрыЗатем мы проверяем, вошел ли пользователь сisset($_COOKIE['auth']) который принадлежит сеансу, созданному во время входа в систему или регистрации.

Если этот файл cookie присутствует, мы запускаем сеанс, это помогает нам избежать запуска тысяч сеансов для незарегистрированных пользователей и создания огромного количества файлов сеансов.

Настройки сеанса:

php файл

session_save_path("/home/user/sessions");
session_set_cookie_params("86400", "/");
session_name("auth");

php.ini

session.gc_maxlifetime = 90000
session.cookie_lifetime = 90000
session.use_trans_sid = 0
session.use_only_cookies = 1

Создать сеанс входа (При успешном входе)

session_start();
session_regenerate_id(true);

$_SESSION['userId'] = $userId;
$_SESSION['created'] = time();

session_write_close();
header("Location: $_SERVER[HTTP_REFERER]");

Проверка необходимости возобновления сеанса

Затем мы проверяем, следует ли начинать сеанс для пользователя, на основании того,auth cookie сеанса установлен.

Он будет установлен, только если пользователь ранее зарегистрировался или вошел в систему:

if(isset($_COOKIE['auth'])){
    session_start();
    session_write_close();
}

Проверьте, вошел ли пользователь в систему

Чтобы проверить, вошел ли пользователь в систему, мы используем функцию:

function isAuthenticated(){

    if (!isset($_SESSION['userId']))
        return false;
    else
        return true;
}

Выйти

function logOut(){
    session_start();
    session_destroy();
    setcookie('auth', "", 0);
    unset($_SESSION);
    unset($_COOKIE['auth']); 
    return true;
}

По какой-то причине я получаю много пустых (размер файла 0) файлов сеанса в папке сеанса.

Откуда они?

Есть лиsession_regenerate_id(true) создать новый файл сеанса и оставить старый файл сеанса пустым? Это единственная причина, по которой я могу думать о пустых файлах сессии?

Ответы на вопрос(4)

Ваш ответ на вопрос