ini_set(session.save_path = $foo);

Всё о языках программирования, таких как PHP и Perl; вебсерверах, CGI, базах данных и языке SQL.

Все про мови програмування, такі як PHP та Perl; вебсервери, CGI, бази даних та мову SQL.
tryto
Сообщения: 3
Зарегистрирован: Пт июн 02, 2017 10:01 pm
Репутация:
Пол: Не указан
Агент пользователя: Chrome Windows 1280x800

ini_set(session.save_path = $foo);

Сообщение tryto » Ср сен 27, 2017 5:24 pm

Фреймворк: codeigniter3

Библиотека сессий по умолчанию предполагает драйвер files.

При использовании его выдает ошибку:

An uncaught Exception was encountered

Type: Exception

Message: Session: Configured save path '<%путь к корню%>/application/storage/sessions' is not a directory, doesn't exist or cannot be created.

Filename: <%путь к корню%>/system/libraries/Session/drivers/Session_files_driver.php

в phpinfo() session.save_path /var/lib/php5 - не меняется путь. В указанную папку (естественно) запись запрещена. Другие параметры сессии изменяются, к примеру, время жизни сессии или ее имя.

//указанный в ошибке путь не проверяется, скрипт проверяет реальное место сохранения файлов сессии, а не указанный путь.

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

ПыСы: все сделано по мануалам, ошибка не в коде.

if (isset($this->_config['save_path']))
{
$this->_config['save_path'] = rtrim($this->_config['save_path'], '/\\');
ini_set('session.save_path', $this->_config['save_path']);
}


var_dump('$this->_config['save_path']'); выдает нужный путь
Аватара пользователя
vozduch
Сообщения: 756
Зарегистрирован: Пт янв 08, 2016 11:47 am
Репутация:
Пол: Женщина
Агент пользователя: Chrome Linux 1366x768

ini_set(session.save_path = $foo);

Сообщение vozduch » Чт сен 28, 2017 8:29 am

Здравствуйте,
для этого фреймворка больше подойдет сервер VPS: https://www.zzz.com.ua/ru/predlozhenie/vps . Если Вам нужна будет помощь в настройке самого сервера, мы предлагаем также услугу администрирования сервера либо платную техническую помощь - напишите на support{at}zzz.com.ua, если хотите узнать больше.
Всегда рада помочь,
Мира,
Служба поддержки ZZZ
Приєднуйтесь до нас на Facebook або vKontakte та отримуйте наші ексклюзивні пропозиції, а також будьте в курсі важливих подій і новин світу веб-хостингів!
tryto
Сообщения: 3
Зарегистрирован: Пт июн 02, 2017 10:01 pm
Репутация:
Пол: Не указан
Агент пользователя: Chrome Windows 1280x800

ini_set(session.save_path = $foo);

Сообщение tryto » Чт сен 28, 2017 9:48 am

Добрый день, Мира

Не могу не согласиться, что VPS более подходящий. :D
Однако, вопрос остается тот же. Почему не переписывается значение. session.save_path на время выполнения скипта, хоть и другие значения переписываются?
Аватара пользователя
vozduch
Сообщения: 756
Зарегистрирован: Пт янв 08, 2016 11:47 am
Репутация:
Пол: Женщина
Агент пользователя: Chrome Linux 1366x768

ini_set(session.save_path = $foo);

Сообщение vozduch » Чт сен 28, 2017 10:05 am

Так происходит из соображений безопасности - если мы изменим на php_value[session.save_path], то открылась бы возможность доступа к папкам других пользователей, что крайне нежелательно ;) На сервере VPS Вы можете сами изменять подобные настройки, при этом не нарушая безопасности ни своей, ни других пользователей.
Всегда рада помочь,
Мира,
Служба поддержки ZZZ
Приєднуйтесь до нас на Facebook або vKontakte та отримуйте наші ексклюзивні пропозиції, а також будьте в курсі важливих подій і новин світу веб-хостингів!
tryto
Сообщения: 3
Зарегистрирован: Пт июн 02, 2017 10:01 pm
Репутация:
Пол: Не указан
Агент пользователя: Chrome Windows 1280x800

ini_set(session.save_path = $foo);

Сообщение tryto » Чт сен 28, 2017 10:21 am

Мира, но для папок же есть права доступа. Я же пытаюсь сменить путь на ту папку, правами доступа которой я управляю сам и устанавливаю 0777 на нее. И смена пути сохранения работает только в пределах скрипта. По завершении его работы этот параметр сбрасывается в умолчания. Так что в этом нет особого вреда остальным.
Короче говоря, победить это никак в текущем тарифном плане. Правильно?
Аватара пользователя
vozduch
Сообщения: 756
Зарегистрирован: Пт янв 08, 2016 11:47 am
Репутация:
Пол: Женщина
Агент пользователя: Chrome Linux 1366x768

ini_set(session.save_path = $foo);

Сообщение vozduch » Чт сен 28, 2017 11:23 am

То, о чем Вы пишете, тоже можно обойти. На виртуальном хостинге мы этот параметр из соображений безопасности не изменим, поэтому рекомендую перейти на VPS.
Всегда рада помочь,
Мира,
Служба поддержки ZZZ
Приєднуйтесь до нас на Facebook або vKontakte та отримуйте наші ексклюзивні пропозиції, а також будьте в курсі важливих подій і новин світу веб-хостингів!

Вернуться в «PHP, CGI, SQL»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость