еще вопросы по ngx_http_perl_module

Igor Sysoev is at rambler-co.ru
Mon Nov 27 18:41:50 MSK 2006


On Fri, 24 Nov 2006, Veryazov Sergey wrote:

> Из документации:
> syntax: perl_require модуль
> ....
> Директива задаёт имя модуля, который будет подгружаться при каждой 
> переконфигурации. Директив может быть несколько.
>
> Использую подключение двух модулей модулей.
>
>   perl_require module1.pm;
>   perl_set $var1 module1::value;
>
>   perl_require module2.pm;
>   perl_set $var2 module2::value;
>
> $var1 - отрабатывает нормально.
> $var2 - пусто.
>
> В логе:
> 2006/11/24 14:48:00 [error] 16846#0: *1 call_sv("module2::value") failed: 
> "Undefined subroutine &module2::value called.", ....
>
> Меняем вызов модулей в конфигурации местами - ситуация противоположная:
> т.е. перестает работать module1::value
>
> В чем проблема?

Дело в том, что во время первого perl_set создаётся интерпретатор перла
и в его контексте делается require всех модулей, которые были определены.
Второй раз require не делается. Наверное. это можно добавить.


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list