[zorp-hu] Zorp 3.3.6 - port valasztas hostnev alapjan
Farkas Dániel
linux at farkasdaniel.hu
2011. Feb. 23., Sze, 18:47:53 CET
Szia!
overrideable jó helyen van, ellenben a debugban ez a hiba:
TypeError: 'tuple' object does not support item assignment#012
Ha jól olvastam utána, akkor nem engedi felülírni a hash elemét.
Mindent köszi!
U.I.: Sajnos nem értek a python nyelvezetéhet, de már szokom :)
Nagyüzemben nyomozok, miért nem írhatom felül.
> Szia,
>
> 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
> kéne. Az overrideable attribútum helyével kapcsolatban nem vagyok
> 100%-ig biztos, de szólni fog a Zorp, ha nem jó helyre tettem. Ez az a
> paraméter, ami azt szabályozza, hogy a proxy osztály módosíthatja-e a
> routerben beállított célcímet.
>
> Doksit erre találsz, ami bár Pro-hoz van az egyetlen különbség most már
> a proxyk számossága:
> http://www.balabit.com/support/documentation/documents/zorp-3.3fr1-guides/zorp-gateway-v3.3fr-guide-reference-en.html/index.html-single.html
>
> Balint
>
> 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)
> return HTTP_HDR_ACCEPT
> else:
> self.session.target_address[0] = SockAddrInet("127.0.0.1" , 50080)
> return HTTP_HDR_ACCEPT
>
> def zorp_http():
> Service("intra_http", IntraHttp, router=DirectedRouter(dest_addr=(SockAddrInet("127.0.0.1", 50080),), overrideable=TRUE)
> Listener(SockAddrInet("10.20.2.160", 80), "intra_http")
További információk a(z) zorp-hu levelezőlistáról