Появляется "мусор" в response_body до и после "ожидаемого body"

Igor Sysoev is at rambler-co.ru
Tue Apr 7 13:44:08 MSD 2009


On Tue, Apr 07, 2009 at 12:38:50PM +0400, Maxim Dounin wrote:

> Hello!
> 
> On Tue, Apr 07, 2009 at 11:54:19AM +0400, Igor Sysoev wrote:
> 
> > On Mon, Apr 06, 2009 at 08:43:21PM +0400, bas-kam wrote:
> > 
> > > 
> > >    03.04.09, 04:42, "Bogun Dmitriy" <vugluskr at vugluskr.org.ua>:
> > > 
> > >      В Птн, 03/04/2009 в 03:05 +0400, Anton Yuzhaninov пишет:
> > > 
> > > Bogun Dmitriy wrote:
> > > > Ситуация следующая с ipb форума делается ajax запрос на "быстрое 
> > > > редактирование" поста. В ответ возвращается страничка у которой в body в 
> > > > начало и в конец добавлено несколько символов, которых не было в момент 
> > > > отправки.(Чтобы это проверить я добавил сохранение сформированного 
> > > > ответа в файл непосредственно перед отдачей клиенту). В начало body 
> > > > добавляется "8366\n" в конец "\n0". Символы в начале изменяются, в 
> > > > хвосте всегда 0. Количество символов не меняется...
> > > 
> > > Скорее всего из за баги в php-коде в ответ на HTTP/1.0 запрос от nginx
> > > возвращается HTTP/1.1 ответ с chunked encoding
> > > 
> > > workaround - прописать в конфиге апача:
> > > 
> > > SetEnv force-response-1.0 1
> > > 
> > > В моём случае ни строчка выше, ни "BrowserMatch ".*" downgrade-1.0 force-respon
> > > se-1.0" не помогли, т.е. мусор по прежнему отображается на страницах.
> > > Естественно апач перегружал после добавления строчек. Строчки добавил в конец h
> > > ttpd.conf (на всякий случай).
> > > Так же "мусор" у меня прямо на главной странице. Всё это добро появилось после 
> > > перехода на связку apache (2.2) + nginx (0.6.36). 
> > 
> > Патч для 0.7.50. Chunked ответ передаётся как есть.
> > Некоторые фильтры работают не корректно:
> > 1) gzip-фильтр такие ответы не сжимает;
> > 2) SSI обрабатываться при условии, что команда не попадает на границу chunk'а;
> > 3) sub_filter работает при условии, что заменяемая часть не попадает
> >    на границу chunk'а;
> > 4) XSLT, addition работать не будут.
> 
> Бррр.  Может лучше не трогать это место пока не появится 
> нормальный разбор chunked?
> 
> Потому как я живо представляю в какую тыкву превратится ответ если 
> по нему пройдётся ssi и/или sub_filter, изменив тем самым реальный 
> размер чанка (но не поправив chunk-size).

Да, про это я совсем забыл. ssi и sub_filter вообще работать не будут,
как XSLT и addition.

Ну в общем, да, я пока в сомнениях, коммитить ли это.


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





More information about the nginx-ru mailing list