Проблема с сохранением сеансов php в другом каталоге

Я очень стараюсь сохранить свои сеансы в другом каталоге. У меня есть общий сервер в OVH. Путь сохранения сеанса по умолчанию — /tmp, и я хочу его изменить.

В моем корневом каталоге у меня есть папка www, которая является моей основной папкой веб-сайта. Я создал рядом с ней папку «sessions», chmoded 777. Когда я делаю print_r(scandir('/home/expressptp/sessions/'));, я получаю файлы просто отлично, но когда я пытаюсь session_save_path('/home/expressptp/sessions');, там ничего не появляется.

Полный код выглядит примерно так:

    session_save_path('/home/expressptp/sessions');
    session_start();

    echo session_id();
    $_SESSION["test"] = "test";

    echo session_save_path(); //that prints good path

Но проблема в том, что в папке sessions нет сессий :(

Я пробовал все. Я помещаю папку «сессии» в «www», chmod 777, устанавливаю путь с помощью realpath(dirname($_SERVER['DOCUMENT_ROOT']) и т. д.

Если есть идеи буду признателен.


person ronida    schedule 30.05.2019    source источник


Ответы (1)


Вы абсолютно уверены, что ничего в вашем коде не начало выводиться («эхо», html-теги или текст) в браузер до того, как вы попробуете этот код?

Много раз функции сеанса/заголовка/файла cookie не работают должным образом только из-за этого...

Кроме того, многие хост-провайдеры ограничивают такие конфигурации. Проверяли ли вы, отключена ли функция session_save_path() или OVH явно запрещает это изменение конфигурации?

person Shores    schedule 30.05.2019