Re[2]: вопросы по перловому модулю

Igor Savchenko dicsydel at gmail.com
Fri Aug 31 19:21:09 MSD 2007


Hello Igor,

Friday, August 31, 2007, 6:03:27 PM, you wrote:

> On Fri, Aug 31, 2007 at 05:16:18PM +0300, Igor Savchenko wrote:

>>   1. Если внутри перлового обработчика пусто, к примеру:
>> 
>>   package MyPerlHandler;
>>                                 
>>   use nginx;
>> 
>>   sub handler
>>   {
>>         my $r = shift;
>>         
>>         
>>   }
>> 
>>   1;
>>   __END__
>> 
>>   Тогда при запросе на локатион который обрабатывается таким
>>   обработчиком nginx думает секунд 5 и ничего не возвращает точнее
>>   получается ответ с кодом 0 и пустым телом (без хедеров) и при этом в
>>   error.log ничего не кладется.
>>   Вопрос: Может это как-нибудь хендлить и писать в эрор лог хоть
>>   что-нибудь?
>> 
>> 
>>   
>>   2. Если внутри обработчика написать $r->print("123"); return OK;
>>   Без $r->send_http_header, то данные клиенту передаются, но
>>   появляется опять же секунд на 5 задержка. Откуда она берется? а
>>   также информация о том что клиенту отдался контент без хедеров в
>>   лог тоже не кладется. Может что-то писать следует? Или принудительно
>>   слать хедеры?

> Задержка, скорее всего, берётся из "keepalive_timeout 5".

Да. Так и есть.


> В первом случае действительно вообще ничего не передаётся.
> Во втором только "123". На мой взгляд, это удобно для написания
> серверов, работающих по псевдо-HTTP.

Ясно. Но для не "псевдо-HTTP" а для скажем при простой разработке бывает
что просто забыл отправить хедеры, может стоит какой-нибудь notice
клась в еррор лог?


> Ксати, а как в подобных случаях ведёт себя Апачевский mod_perl ?
> У меня есть подозрение, что так же.

Не работал с ним, не могу сказать.





---------------------------------
Igor V. Savchenko

http://webta.net

mailto: igor at webta.net
ICQ: 86915046






More information about the nginx-ru mailing list