А у меня перл не тредовый и более того, после того как на 0.3.61 откатил, все работает.<br><br>-----<br>Антонов Андрей<br><br><div><span class="gmail_quote">24.11.06, <b class="gmail_sendername">Igor Sysoev</b> <<a href="mailto:is@rambler-co.ru">
is@rambler-co.ru</a>> написал(а):</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">On Fri, 24 Nov 2006, Veryazov Sergey wrote:<br><br>
> Беру код из примера:<br>> <a href="http://www.sysoev.ru/nginx/docs/http/ngx_http_perl_module.html">http://www.sysoev.ru/nginx/docs/http/ngx_http_perl_module.html</a><br>><br>> Выдает ошибку:<br>><br>> 2006/11/24 12:01:40 [error] 30314#0: *3 call_sv("
<br>><br>> sub {<br>> my $r = shift;<br>> my $ua = $r->header_in("User-Agent");<br>><br>> return "" if $ua =~ /Opera/;<br>> return "1" if $ua =~ / MSIE [6-9]\.\d+/;
<br>> return "";<br>> }<br>><br>> ") failed: "Can't call method "header_in" on an undefined value at (eval<br>> 2) line 3."<br>><br>> Оказывается, что параметр запроса не передается в функцию:
<br>> perl_set $test 'sub { my $r = shift; return "($r)" }';<br>> в итоге $test = '()';<br>><br>> В чем проблема?<br>><br>> nginx version: nginx/0.4.13<br>> built by gcc 4.1.1 20060525 (Red Hat
4.1.1-1)<br>><br>> $perl -v<br>> This is perl, v5.8.8 built for x86_64-linux-thread-multi<br><br>По-видимому, начиная с 0.3.38, nginx не работал с трэдовым перлом.<br>Патч прилагается.<br><br><br>Игорь Сысоев<br>
<a href="http://sysoev.ru">http://sysoev.ru</a><br><br></blockquote></div><br>