| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > session.save_path |
| Автор: Гость_Sirius 22.8.2005, 05:15 |
| Я раньше строил сайт где в настройках ПХП в разделе SESSION было session.save_path /tmp И все работало... Потом перешел на другое место..и там сессии не работают (хотя ошибок тоже не выдается). Посмотрел в настройках, и вижу там session.save_path C:\PHP\sessiondata Возможно причина в этом, но я все равно толком не понял. К примеру, как я могу изменить их настройки?...и почему сессии все же не работают?... Создал там в основном root документе (где все файлы сайта) папку tmp и в моем файле где должна работать сессия, перед session_start кинул строчку session_save_path('/tmp/'); Тем самым указав чтоб файлы сессии хранились там..но все равно не работает. Словом если знаете какие-либо способы обойти эту проблему, и в чем именно она вообще заключается..Прошу помочь! Застрял.. |
| Автор: Bikutoru 22.8.2005, 08:20 | ||||||
А эта папка существует? Если нет, то ничего работать и не должно
Это означает, что сессии должны хранится в папке /tmp, причем путь идет о корня сервера, а не от корня сайта. Попробуй сделать так
|
| Автор: Mal Hack 22.8.2005, 12:12 |
| 1. /tmp/ на виндоусе быть не может. 2. session.save_path = "d:/usr/php-4.3.10/sessiondata" - по шаблону укажи путь. |
| Автор: Гость_Sirius 22.8.2005, 13:45 |
| Да, папка C:\PHP\sessiondata конечно существует ( у меня на компе) но все равно не работает.. session_save_path($_SERVER["DOCUMENT_ROOT"] . '/tmp/'); так тоже не работает ... d:/usr/php-4.3.10/sessiondata такой путь тоже указал session_save_path('d:/usr/php-4.3.10/sessiondata'); Словом ничего не работает.. |
| Автор: Mal Hack 22.8.2005, 13:58 |
| 1. Указывай в php.ini. 2. Обрати внимание на слэши. И путь ты должен свой указать. |
| Автор: Гость_Sirius 22.8.2005, 14:19 |
| У меня есть там в одной из папок Apache и там тоже PHp...в этой папке ПХП есть файл ПХП.ini Я там указал путь! но все равно не работает.. Хотя как это может повлиять на работу сайта, не понимаю...ведь это вроде влияет когда у себя на локальном сервере скажем пишут программы и тестируют..а с интернетом какая связь у файла этого.. Но не понимаю как это поможет, ведь я этот Apache как бы вообще не использую, и их Php тоже..наверное как-то нужно запустить что-то? я новичок |
| Автор: Гость_Sirius 22.8.2005, 22:18 |
| Может кто-нибудь обьяснит то что я не понял? Пожалуйста, я реально застрял... у меня есть несколько php.ini и в них я указал эти пути, но все равно ничего не работает, хотя был бы рад узнать какая связь у этих php.ini настройками php у сервера...я же не на локальном сервере тестирую программу, или может я чего не понял, прошу помощи! Я уже по всякому пробовал... |
| Автор: Mal Hack 23.8.2005, 08:50 |
| Приоритет обработки php.ini 1. В папке с Apache 2. В папке Windows 3. В папке PHP |
| Автор: Сириус 26.8.2005, 01:13 |
| Может это выглядит уже очень таинственно, но все равно ничего не работает. Админы сервера деликатно не отвечают на вопрос про данную проблему. Я нашел php.ini и во всех изменил путь к одной папке у себя на компе..к той..C:\PHP\sessiondata Я специально проверил на сервере holm.ru, там все работает. На enom.com не работает. Разница в настройках Php. Я даже один раз включил одну функцию, щас точно не помню, но она позволяет изменить путь сохранения сессий..(изменил на tmp)...другой раз сам написал все функции сессии ( с одной книги скатал) и все равно не работает. Это мистика чтоли*.. |
| Автор: IZ@TOP 26.8.2005, 08:54 |
| 1. Насколько я знаю, в путях в файле php.ini Допускаются только прямые слеши. 2. Проверь доступ на запись в каталог куда ты хочешь сохранять у себя на компе сесси (на сервере тоже, если это не холм - у AGAVA настройки ни когда не подводили), для пользователя из под которого выполняется Apache. 3. Функция для прямолго указания "куда сохранять сессии" называется http://php.net/session_save_path. |
| Автор: Сириус 26.8.2005, 14:55 |
| Спасибо за ответ. Я везде прописал session.save_path = "C:\PHP\sessiondata" (это прямые слеши?).. Сегодня я на сервере для папки tmp установил Write access allowed и в моих кодах перед session_start() написал session_save_path($_SERVER["DOCUMENT_ROOT"] . '/tmp/'); (чтоб сессии сохранялись в папке на сервере...) еще попробовал так session_save_path('/tmp/'); тоже не работает.. там админы сервера тоже не знают в чем проблема. А у меня на компе около семи файлов php.ini где везде установил session.save_path = "C:\PHP\sessiondata" У меня вопрос, как проверить в этой папке есть ли доступ на запись? Какой-то программой? Может можно об этом где-нибудь почитать, как это делается.. |
| Автор: Сириус 26.8.2005, 15:35 |
| заменил все пути на пути с прямыми слешами..все равно не работает. session.save_path = "C:/PHP/sessiondata" |
| Автор: Сириус 27.8.2005, 18:15 |
| Здравствуйте У меня отличная новость, все заработало..но каким образом? Я подумал что стоко вас мучал, так что может вам будет интересно..там группа по Пхп в сервере кинула файлы ( в основную директорию сайта) с форматами asax и aspx и еще один текстовый файл web.config с ХМЛ кодом каким-то..и все заработало..оригинально да.. |