Привет всем!
Кто тут есть из знатоков mod_perl, помогите, а то я чего-то не догоняю
самостоятельно!
Итак, есть довольно большой движок в виде модуля (Server.pm), который в свою
очередь цепляем состав других модулей. Для ускорения работы и минимизации
используемой памяти в стартаповом скрипте создается глобальный объект
$server = new $Server;
Все конечно не так просто, есть куча других наворотов (поиск и чтение
конфигов и т.д.).
Далее, (а все делается через HTML::Mason) в моем handler'e делается
$server = new Server if not ref $server;
т.е. принудительное создание глобального объекта в случае, если он по
какой-то причине все-таки не был создан (например под виндой, дома
отлаживаюсь).
Регистрация юзеров сделана на основе Apache::AuthCookie, соответственно мной
повешаны
PerlAuthenHandler, PerlAuthzHandler в httpd.conf.
Внимание, вопрос: В этих хандлерах я не вижу своего глобального объекта
$server. Напроч не вижу! Такое ощущение, что Authen фаза выполняется в
каком-то другом адресном пространстве.
Прошу знающих высказаться по теме. В принципе, систему авторизации можно и
изменить (если кто-то предложит что-то лучшее). Основной принцип: проверку
юзера и его пароля я должен выполнять через свой движок, а не независимым
скриптом из 3-х строчек.
Сергей Русаков
=============================================================================
= Apache-Talk@xxxxxxxxxxxxx mailing list =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =
"Russian Apache" includes software developed
by the Apache Group for use in the Apache HTTP server project
(http://www.apache.org/) See
Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C)
1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.