Version: 3.3.3 (using KDE 4.3.4) OS: Linux Installed from: Compiled From Sources ktorrent always use keep-alive connection. This is the problem. It can not be proxied throughout nginx or another proxy. ================= tuupic ~ # telnet tuupic 8080 Trying 192.168.0.2... Connected to tuupic. Escape character is '^]'. HEAD / HTTP/1.0 HTTP/1.1 500 Connection: keep-alive Content-Length: 189 Content-Type: text/html Date: Mon, 01 Feb 2010 16:45:47 UTC Server: KTorrent/3.3.3 <html><head><title>HTTP/1.1 500 Internal Server Error</title></head><body><h1>Internal Server Error</h1><p>Произошла внутренняя ошибка сервера: Неподдерживаемый метод HTTP</p></body></html>^] telnet> q Connection closed. tuupic ~ # =================
First of all the HTTP server does not support HEAD. Second how does using keep-alive prevents the webinterface from being proxied ?
It was just example, that ktorrent use keep-alive by default. Nginx use only HTTP/1.0 without keep-alive for backend. In HTTP/1.0 keep-alive disabled by default and server(ktorrent) must not answer HTTP/1.1 answer on HTTP/1.0 request.
SVN commit 1100501 by guisson: Fix handling of keep-alive in webinterface plugin BUG: 225167 M +1 -0 ChangeLog M +52 -3 plugins/webinterface/httpclienthandler.cpp M +3 -2 plugins/webinterface/httpclienthandler.h M +5 -3 plugins/webinterface/httpresponseheader.cpp M +4 -1 plugins/webinterface/httpresponseheader.h M +10 -11 plugins/webinterface/httpserver.cpp M +1 -1 plugins/webinterface/httpserver.h WebSVN link: http://websvn.kde.org/?view=rev&revision=1100501