sergz80
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Подробнее... на данный момент есть такой кусок кода тупо создать сессию и вытащить из нее значение если сессия есть: use Apache2::Request; use Apache2::RequestRec; use Apache::Session::File; my $req = Apache2::Request->new($r); # check if session exists $cookie = $req->headers_in->{Cookie} || undef; if ($cookie) { $cookie =~ s/SESSION_ID=(\w*)/$1/; tie %session, 'Apache::Session::File', $cookie, { Directory => "/tmp/plsessions/", LockDirectory => "/tmp/plsessionslock/" }; $acc_fromsess = $session{acc_id}; print "Yes cookie = $cookie<br>"; print "acc_fromsess = $acc_fromsess<br>"; } #create a session object based on the cookie we got from the browser, or a new session if we got no cookie else { #create a new session, give them their cookie back tie %session, 'Apache::Session::File', $cookie, { Directory => "/tmp/plsessions/", LockDirectory => "/tmp/plsessionslock/" }; $session_cookie = "SESSION_ID=$session{_session_id};"; $req->headers_out->set('Set-Cookie' => $session_cookie); print "No cookie, new = $session_cookie<br>"; $session{acc_id} = "234"; } при этом создание новой сессии происходит нормально, а вот проверка существующей сессии, падает с ошибкой malloc в логе: ==> /etc/httpd/logs/error_log <== *** glibc detected *** /var/www/d3trad: malloc(): smallbin double linked list corrupted: 0x00007f3bfecbb960 *** помогите плиз понять что не так или хотябы пример работы с сессией в mod_perl2 [/more] Добавлено: проблема решена, забыл untie сделать | Всего записей: 1 | Зарегистр. 22-11-2013 | Отправлено: 13:51 22-11-2013 | Исправлено: sergz80, 14:23 22-11-2013 |
|