The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"FreeBSD+PHP5  не работают php cессии"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [ Отслеживать ]

"FreeBSD+PHP5  не работают php cессии"  
Сообщение от alligatorus email(ok) on 06-Дек-07, 11:23 
Всем доброго времени суток!
Раньше на серваке стояла FedoraCore7 с собранными из сыруов ручками Apache2.2.6/PHP5.2.5/MySQL5.0.45, сессии хранились в /tmp и все работало  нормально. Но вдруго в одно и тоже время на всех сайтах перестала работать авторизация, вводишь логин\пароль тебя пропускают, а при следующем открытии страницы тебя опять считают гостем.
Оказалось, что PHP разучился рабоать с сессиями,вот отрывки кода и их вывод:

#index.php
#Генерим ид сессии, получаем вот это c0cc060cf2f9523977d5d081ad4d5063
$ses_name = md5($userid.ip2long($IP).rand(1,20));

#Обзываем сессию (c0cc060cf2f9523977d5d081ad4d5063)
session_id($ses_name);

#Инициализируем сессию
session_start();

#Записываем в нее юзера
$_SESSION['userid'] = $userid;

#А здесь я получаю обрезанный до 18 символов ид c0cc060cf2f952397
session_id();

<frames>

#main.php, скрипт во фрейме, получает ид сессии указанный выше
session_start();
session_id();
#Вот тут самое интересное! Скрипт ВСЕГДА отдает один и тотже ид n6shhlietuvkndpb18su46gdod, даже если открывать разными браузерами. Открываешь с другого компа он первый раз выдает правильный ид но обрезанный до 28 символов. А потом опять одно и тоже.
</frames>
И так во всех скриптах, причем дома под виндой все пашет.

Погрешил на свои кривые руки, неправильно собравшие сервак, все снес и поставил все из родных рпмок. Фиг! тоже самое! Тогда я решил снести федору, тем более что давно собирался фряху поставить. Снес, поставил FreeBSD6.2. Все настроил, поднял и опять тоже самое.

uname -a FreeBSD ya.kg 6.2-RELEASE FreeBSD 6.2-RELEASE #2: Wed Dec  5 03:28:32 UTC 2007     root@ya.kg:/usr/obj/usr/src/sys/main_kernel  i386
В ядро добавлен IPFW
Apache2.2.6/PHP5.2.5(CGI)/MySQL5.0.45-freebsd
В общем помогите советом! Чуствую себя тупым юзверем который тыкается во все углы, а простого решения перед носом не видит :)


Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "FreeBSD+PHP5  не работают php cессии"  
Сообщение от Dx email on 11-Дек-07, 13:13 
Если при сборке не отключать сесии (--disable-session), они должны быть включены по умолчанию, на всякий случай проверь, доступны ли они, покажи вывод phpinfo(); раздел 'session'
Я вот читаю-читаю твой код, понять не могу, ты сам генеришь ид сессии? Зачем? :) когда ты пишешь session_start(); у тебя он сам генерится ($PHPSESSID = <ид сессии>;), то есть браузеру отдаются куки вида Set-Cookie: PHPSESSID=<ид сессии>. Если не хочешь PHPSESSID, переназови, session_name('MYSESSION');
Если сомневаешься в настройках, напиши скрипт наподобие этого:

// -------- test.php ---------
<?php
    if( isset($_POST['submit']) ) {
        setcookie("PHPSESSID", ""); // убираем ид сессии
        echo "сессия завершена";
        echo "<FORM action='test.php' method='POST'>
              <INPUT type='submit' name='submit1'>
              </FORM>";
        
    } else {
        session_start();
        echo "сессия запущена ";
        echo "PHPSESSID = ".session_id();
        echo "<FORM action='test.php' method='POST'>
              <INPUT type='submit' name='submit'>
              </FORM>";
    }
?>
// ------------------------------

он начинает и завершает сессию, при старте сессии должен выдаваться новый ид.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "FreeBSD+PHP5  не работают php cессии"  
Сообщение от alligatorus (??) on 14-Дек-07, 01:16 
Dx
Ну вот, хоть ктото откликнулся :)
Спасибо за совет, но проблема была в другом, все вылечилось переносом хранилища сессий из /tmp в /var/php/sessions. Такое ощущения что PHP чемто не нравился /tmp.
P.S. А ид сессии я генерю потому что просто хочется поизвращатся :)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Trader.Uz - сайт для тех кто хочет знать все о рынке forex "  
Сообщение от Trader.Uz on 07-Дек-08, 10:52 
>Dx
>Ну вот, хоть ктото откликнулся :)
>Спасибо за совет, но проблема была в другом, все вылечилось переносом хранилища
>сессий из /tmp в /var/php/sessions. Такое ощущения что PHP чемто не
>нравился /tmp.
>P.S. А ид сессии я генерю потому что просто хочется поизвращатся :)
>

Аналитические обзоры котировки курсы акции  валюта фьючерсы
форекс обучение forex  ленты валютных
и фондовых новостей экономический календарь событий
статьи трейдеров библиотека трейдеров auto trading.
Добро пожаловать в клуб трейдеров на сайте http://trader.uz


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру