On 1/03/2015 4:46 p.m., johnzeng wrote: > Hello Eliezer: > > Thanks for your reply , although squid 2.7 > stables 9 don't support Tproxy really , but We realize the function via > patch third patch . > > Why we meet the problem ( Unsupported Request > Method and Protocol ) ? although some special application communicate > based 80 port , > > they don't use http protocol or they change http > protocol and method isn't GET OR POST . for example : QQ application and > some QQ game . In Squid-2.7 you need to use the extension_methods directive to tell Squid what non-HTTP/1.0 methods to accept. Squid-3 accepts the full range of HTTP/1.1 and extension methods by default with no configuration needed. I seem to remember QQ application working through Squid-3 though, so it should work after the upgrade. If not I would like to see a copy of what the message protocol they use. > > But squid don't support other protocol except > normal http protocol or don't support other method except GET .. of > http protocol , for example HEAD. > > So if it's a transparent proxy , and you will > access these application , We have to face the problem . > > Why i don't use highest version ago , include > squid 3.5.2 , > > because squid 2.7 stable 9 can support coss for > small http object > > and We don't confirm whether squid 3.5.2 can > support small http object via rock or coss . COSS is obsolete. It was replaced by Rock storage format. Squid has always been able to store small objects in various ways. The type of cache storage formats available is not affecting that. > > i know these are some function ( > on_unsupported_protocol ) in 3.HEAD and , > > it won't be very stable or we have to use > trunk-non-HTTP-bypass-v8.patch for squid 3.5.2 > > http://www.squid-cache.org/Versions/v3/3.HEAD/cfgman/on_unsupported_protocol.html > That feature change will not help you with this problem. IF the method is just an HTTP/1.1 extension method, then the protocol is HTTP/1.1 and *is* supported by Squid-3.2 and later. IF, the application is being both abusive and broken by sending a non-HTTP protocol Squid is rejecting abuse. Detecting and preventing this type of network abuse is one of the major benefits of using a proxy like Squid. The QQ application (and others) are responsible for A) using their own port suitable to the protocol they are sending, and/or B) accepting the HTTP messages Squid returns to them on port 80. Consider what would happen if you tried living underwater? does not work if you stay the way you are right now. You have to have breathing apparatus etc to make you compatible with the water environment. Same goes for applications using the registered ports 0-1024 which have specific protocols assigned to them. Applications need to understand and use HTTP to use port 80. Amos _______________________________________________ squid-users mailing list squid-users@xxxxxxxxxxxxxxxxxxxxx http://lists.squid-cache.org/listinfo/squid-users