Ключевые слова:cgi, utf8, perl, session, web, encoding, codepage, charset, (найти похожие документы)
From: Dmitry Fedenko <rapaman@virthost.net.>
Newsgroups: email
Date: Mon, 23 Apr 2008 17:02:14 +0000 (UTC)
Subject: Как заставить работать CGI::Session с директивой use encoding 'utf-8' в perl
При написании perl-скриптов в utf-8 (unicode) и использовании модуля
CGI::Session, возникает проблема, что модуль CGI::Session работает
некорректно.
Ошибка возникает в момент чтения данных из сесии. В итоге - сессии
просто не работают, как надо.
(в документации к CGI::Session проблема с 'use encoding utf8' - описана,
но решение предлагается - не использовать эту директиву)
Чтобы решить эту проблему необходимо переопределить serializer сессий, а
именно указать там storable или freezethaw.
Пример:
my $session = CGI::Session->new("serializer:storable",$cgi,{Directory=>"$wmconst::tmp_partner_session"});
После этого сесси будут работать корректно с utf-8
С Уважением,
Дмитрий.
RAS.SU - http://www.ras.su