On 02/23/2011 08:12 AM, Kosa Attila wrote:
On Wed, Feb 23, 2011 at 08:03:50AM +0100, Kovács Bálint wrote:
a 3.3-ban változott a session struktúrája, már nincs server_address, hanem egy target_address hash van, ami tartalmazza az összes beállított (pl. FailoverChainerhez kellő) célcímet. A lenti javításokkal már mennie
class IntraHttp(HttpProxy): def config(self): HttpProxy.config(self) self.transparent_mode = TRUE self.request_header["Host"] = (HTTP_HDR_POLICY, self.TargetByHostHeader)
def TargetByHostHeader(self, name, value): if(value == 'site1.loc'): self.session.target_address[0] = SockAddrInet("127.0.0.1" , 50081) Nekem mukodik a self.session.setServer(SockAddrInet("127.0.0.1" , 50081)) megoldas is.
Sőt, a setServerAddress-be is be lehet kötni, viszont ehhez InbandRouter kell szerintem: class IntraHttpProxy(HttpProxy): def config(self): HttpProxy.config(self) def setServerAddress(self, host, port): hostlist={"intra.loc":("1.2.3.4", 80), "intra2.loc":("1.2.3.4", 81),} if self.hostlist.has_key(host): newhost = self.hostlist[host][0] port = self.hostlist[host][1] host = newhost return HttpProxy.setServerAddress(self, host, port)