ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SSI 502 при POST - господа, м ы в отчаянии.



Сталкивались с похожей проблемой. в результате post запрос обрабатываем бэком и возвращаем саму страницу с ssi вызовами. Тогда все подзапросы идут GET и никаких проблем не возникает.


Valery Kholodkov wrote:
Когда я разбирался с подзапросами, выяснилось, что метода POST они как такового 
не поддерживают. В частности метод POST в подзапросе явно переписывается в GET 
вплоть до текущей версии nginx.

Моя ошибка -- то что я не заметил подзапроса в дебаг логе сразу.

На данный момент я бы не использовал SSI в ответах на POST-запросы.

----- Original Message -----
From: "Александр Кутузов" <alleteam@xxxxxxxxx>
To: valery+nginxru@xxxxxxxxxxx
Sent: Thursday, November 20, 2008 4:29:00 PM GMT +01:00 Amsterdam / Berlin / 
Bern / Rome / Stockholm / Vienna
Subject: Fwd: Re[3]: SSI 502 при POST - господа, мы в отчаянии.

Начало переадресованного сообщения: От: Sergey Bondari < bondari@xxxxxxxxxxx > Дата: 19 ноября 2008 г. 21:50:18 GMT+05:30 Кому: Sergey Bondari < nginx-ru@xxxxxxxxx > Тема: Re[3]: SSI 502 при POST - господа, мы в отчаянии. Ответ-Кому: nginx-ru@xxxxxxxxx

Hello Sergey, Кстати, только что заметил - вопрос автору: зачем в подзапросе при SSI методе GET запросе вообще передавать POST контент основного запроса. Судя по CONTENT LENGTH это и происходит. Поскольку моя проблема напрямую зависит от размера POST CONTENT LENGTH, если этого не делать может и проблема исчезнет SB> sendfile отключил, SB> client_body_temp_path гарантированно на диск эксплицитно направил SB> даже буферы у прокси пробовал увеличивать. SB> Ничего не помогает! ХЭЛП кто-нибудь! VK>> Похоже на client_body_temp_path смотрящий в tmpfs. VK>> Можно попытаться отключить sendfile или VK>> устранить указанную причину.






Не могу решить одну проблему.





По-моему баг в SSI.





Когда на основную страницу приходит





POST больше 10 килобайт, все





SSI вылетают по 502. Вот выписка из





дебаглога. Кто-то похоже





сделал что-то плохое с файл





дескриптором.





nginx/0.6.32 под Linux Gentoo.












2008/11/14 08:03:32 [debug] 18443#0: *790 http proxy header:





"GET /showssi.php HTTP/1.0





Host: www.lyn.com





X-Real-IP: 82.208.43.89





X-Forwarded-For: 82.208.43.89





Connection: close





User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3)





Gecko/2008092417 Firefox/3.0.3





Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8





Accept-Language: en,ru;q=0.7,cs;q=0.3





Accept-Encoding: gzip,deflate





Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7





Referer: http://www.lyn.com/testssi.php?





Cookie: uid=pAGowEka4+Obk2YaAwM6Ag==; lastSeenPage=; currentLang=en_GB;





__utma=14286250.1320585890377542700.1226498364.1226598781.1226658972.9;





__utmz=142862





50.1226582509.4.2.utmcsr=reminder1-2008|utmccn=WreathUsers|utmcmd=email;





analytics_originalReferer=Analytics%3ATyped-in;





analytics_entryPage=http%3A%2F%2Fwww





.lyn.com%2F; PHPSESSID=68820b8d6da2547893dc31e3d3be6193; __utmc=14286250;





UserTrack==192.168.1.164.1226666833815924





Content-Type: application/x-www-form-urlencoded





Content-Length: 12185












"





2008/11/14 08:03:32 [debug] 18443#0: *790 http cleanup add: 0818130C





2008/11/14 08:03:32 [debug] 18443#0: *790 get rr peer, try: 1





2008/11/14 08:03:32 [debug] 18443#0: *790 socket 26





2008/11/14 08:03:32 [debug] 18443#0: *790 epoll add connection: fd:26





ev:80000005





2008/11/14 08:03:32 [debug] 18443#0: *790 connect to 192.168.1.164:80,





fd:26 #792





2008/11/14 08:03:32 [debug] 18443#0: *790 http upstream connect: -2





2008/11/14 08:03:32 [debug] 18443#0: *790 event timer add: 26:





60000:2602192900





2008/11/14 08:03:32 [debug] 18443#0: *790 http subrequest done





"/showssi.php?"





2008/11/14 08:03:32 [debug] 18443#0: *790 saved: 0 state: 0





2008/11/14 08:03:32 [debug] 18443#0: *790 parse: -2, looked: 0





0817EAC7-0817F8A8





2008/11/14 08:03:32 [debug] 18443#0: *790 saved: 0





2008/11/14 08:03:32 [debug] 18443#0: *790 ssi out: 080DFDC4 0817EAC7





2008/11/14 08:03:32 [debug] 18443#0: *790 http postpone filter





"/testssi.php?" 080DFDF8





2008/11/14 08:03:32 [debug] 18443#0: *790 copy filter: -2 "/testssi.php?"





2008/11/14 08:03:32 [debug] 18443#0: *790 pipe read upstream: 0





2008/11/14 08:03:32 [debug] 18443#0: *790 pipe buf busy s:1 t:1 f:0





0817E8A8, pos 0817EA18, size: 3728 file: 0, size: 0





2008/11/14 08:03:32 [debug] 18443#0: *790 pipe buf free s:0 t:1 f:0





081698F8, pos 081698F8, size: 6763 file: 0, size: 0





2008/11/14 08:03:32 [debug] 18443#0: *790 event timer: 25, old:





2602312888, new: 2602312900





2008/11/14 08:03:32 [debug] 18443#0: *790 post event 081E9810





2008/11/14 08:03:32 [debug] 18443#0: *790 delete posted event 081E9810





2008/11/14 08:03:32 [debug] 18443#0: *790 http upstream send request





handler





2008/11/14 08:03:32 [debug] 18443#0: *790 http upstream send request





2008/11/14 08:03:32 [debug] 18443#0: *790 chain writer buf fl:0 s:1005





2008/11/14 08:03:32 [debug] 18443#0: *790 chain writer buf fl:0 s:51





2008/11/14 08:03:32 [debug] 18443#0: *790 chain writer buf fl:1 s:12134





2008/11/14 08:03:32 [debug] 18443#0: *790 chain writer in: 08181354





2008/11/14 08:03:32 [debug] 18443#0: *790 tcp_nopush





2008/11/14 08:03:32 [debug] 18443#0: *790 writev: 1056





2008/11/14 08:03:32 [debug] 18443#0: *790 sendfile: @0 12134





2008/11/14 08:03:32 [alert] 18443#0: *790 sendfile() failed (9: Badfile





descriptor) while sending request to upstream, client: 82.208.43.89,





server: www.lyn.com , request: "POST /testssi.php? HTTP/1.1", subrequest:





"/showssi.php", upstream: " http://192.168.1.164:80/showssi.php ", host:





"www.lyn.com", referrer: " http://www.lyn.com/testssi.php? "





2008/11/14 08:03:32 [debug] 18443#0: *790 chain writer out: FFFFFFFF





2008/11/14 08:03:32 [debug] 18443#0: *790 http next upstream, 2





2008/11/14 08:03:32 [debug] 18443#0: *790 free rr peer 1 4





2008/11/14 08:03:32 [debug] 18443#0: *790 finalize http upstream request:





502










 




Copyright © Lexa Software, 1996-2009.