ini_set('session.use_only_cookies', 1) установлен в 1, но условие говорит нет

У меня есть страница входа, откуда я отправляю данные своей формы, и при этом я создаю самодельную функцию сеанса, в которой я проверяю, если (ini_set('session.use_only_cookies', 1)). Пока данные передаются, создается сеанс, и я проверяю правильность данных для входа, а затем перенаправляюсь на index.php. В index.php я снова запускаю функцию сеанса и сталкиваюсь с ошибкой, что для session.use_only_cookies не установлено значение 1, но оно есть. Я проверил с помощью phpinfo()

Раньше работал с XAMPP и там работало. Недавно перешел на Docker с изображением php:7.2-fpm-alpine3.7.

Моя функция сеанса:

protected function sec_session() {
  define("SECURE", true);
  $session_name = 'sec_session_id';   // vergib einen Sessionnamen
  $secure = SECURE;
  $httponly = true;
  if (!ini_set('session.use_only_cookies', 1)) {
    //header("Location: /error.php?err=Could not initiate a safe session (ini_set)");
    //The above doesn't work
        echo("<script>location.href = '/error.php?err=Could not initiate a safe session (ini_set)';</script>");
//here is where i always land and i'm not sure why?
            exit();
        }
  $cookieParams = session_get_cookie_params();
  session_set_cookie_params($cookieParams["lifetime"],
  $cookieParams["path"],
  $cookieParams["domain"],
  $secure,
  $httponly);
  session_name($session_name);
  session_start(); 
  session_regenerate_id();
    }

person tmzafar    schedule 04.09.2019    source источник
comment
Вы используете php.ini по умолчанию? Если это настроено, пожалуйста, позвольте себе это, так как ваша проблема не может быть воспроизведена с помощью php:7.2-fpm-alpine3.7.   -  person atline    schedule 05.09.2019
comment
@atline я думаю, проблема в том, что локальный хост должен работать на https, а не на http, что также кажется проблемой   -  person tmzafar    schedule 07.09.2019


Ответы (1)


Проблема здесь была в переменной $secure. Он был разработан для работы только с HTTP-запросом. Настройки отлично работали с образом Docker php:7.1-apache.

person tmzafar    schedule 08.09.2019