Я рассмотрел различные темы об этой проблеме и не смог найти решение.
Я использую следующий код:
<?php session_start(); ini_set('display_errors', 'on'); error_reporting(-1); session_name("hello"); $_SESSION['username'] = "name"; echo $_SESSION['username']; echo session_id(); if (is_writable(session_save_path())) { echo "writable"; } ?>
Это результат:
name771e6d83a8578e2dbadac64dc62b5788writable
Однако вывод идентификатора сеанса постоянно меняется при обновлении каждой страницы .
Это происходит во всех браузерах, которые я пробовал (Chrome, IE, FF).
Ни в одном из браузеров я не смог найти cookie-файл PHPSESSID
который должен быть отправлен из моего домена.
Поскольку выход дает возможность writable
, это не должно быть проблемой разрешения.
Это мои настройки php.ini
:
session_auto_start
установлен в 0
, как я предполагаю, это должно быть.
Что может вызвать эту проблему?
Я пытаюсь изучить сеансы, начать с этого простого кода и не могу преодолеть эту проблему.
Другое примечание. Как вы можете видеть, я установил отчет об ошибках, и я не получаю особых ошибок при проверке этого кода на моем VPS-сервере. Однако, когда я запускаю тот же код на какой-либо учетной записи с общим хостингом, который у меня есть на другом сервере, я получаю headers already sent on line 2
ошибке в headers already sent on line 2
. Я не понимаю, что именно имеет значение, но я намерен запускать свой проект только на моем сервере VPS.