On Tue, 23 Nov 2004, Михаил Монашёв wrote:
> получают вот такой ответ:
>
> HTTP/1.1 302 Found
...
> Transfer-Encoding: chunked
> Content-Type: text/html
>
> 309
> HTTP/1.1 302 Found
...
> </BODY></HTML>
>
> 0
>
> В чём может быть причина такого странного ответа? И откуда в ответе
> взялись 309 в середине и 0 c 0D0A в конце? Видно что какой-то модуль
> или что-то ещё дублирует заголовок, приписывая дефолтную кодировку и
> удаляя политику для кук. Как избавться от этого?
Цифры - это от chunked ответа.
> $r->headers_out->set(Location => $banner_link);
> $r->status(REDIRECT);
> $r->send_http_header;
>
> #записываем клик в БД
> #...
>
> return OK;
>
> Или у меня скрипт неверно отрабатывает?
Возможно, нужно не делать "$r->send_http_header;" и вовращать не OK,
а что-то типf REDIRECT.
> Похожая ситуация, только ответ не дублируется, а в него вставляется
> какая-то цифра непонятная:
> получаем ответ:
>
> HTTP/1.1 200 OK
> Date: Tue, 23 Nov 2004 11:55:41 GMT
> Server: Apache
> Pragma: no-cache
> Cache-control: no-cache
> Connection: close
> Transfer-Encoding: chunked
> Content-Type: text/html; charset=windows-1251
> Expires: Tue, 23 Nov 2004 11:55:41 GMT
>
> d66
> <head></head>
> <body bgcolor="#FFFFFF" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" scroll="no"><nobr>
> ...
> </nobr></body></html>
>
> 0
>
> Опять к концу приписался ноль и парочка 0D0A за ним, а перед контентом
> 'd66' . Что это может быть?
Chunked. Это нормально.
Игорь Сысоев
http://sysoev.ru