Let me first describe the problem. As everybody knows, if my Zope site looks so: [root] +-----[dirA]---[doc1] | +-----[dirB]---[doc2] one can use URL like /dirA/dirA/dirB/dirB/dirB/doc2 to access the same document as /dirB/doc2. It is usually not the problem, but on my site I sometimes use such links and for some reasons it would be hard to abandon it. And ... if one starts Teleport or wget, he or she usually downloads huge megabytes of replicas of the same file (things like dirA/doc1, dirA/dirA/doc1, dirA/dirA/dirA/doc1, ... dirA/dirB/dirA/doc1, ...) So, I would like to write some kind of SiteAccess rule, which would check whether the client uses such a path - and if so, redirected to the correct one to prevent the explosion. I imagine its pseudologic so: obj = the-destination-object if obj.url() == the-path-used-by-the-client process-the-request else redirect the client to obj.url() Could anyone help me writing exact code which would do such a thing? Is it a good idea? Wouldn't it conflict with VirtualHostMonster (I use zope behind apache)? PS I know that one can write <a href="<dtml-var something url>"> instead of <a href="something">. Unfortunately there are places where I can not do it (specific ZClass which does not inherit from DTML*something and is heavily used). -- ( Marcin Kasperski | Osoba jest omegalizacją ewolucji uniwersalnej na ) ( http://www.mk.w.pl | określonym odcinku etapowym (Teilhard de Chardin) ) (----------------------------------------------------------------------------) ( Grupy dyskusyjne w firmie: http://www.mk.w.pl/narzedzia/narzedzia_inn )