Python Twisted将子目录重定向到另一个域

Python Twisted将子目录重定向到另一个域,python,redirect,dns,twisted,Python,Redirect,Dns,Twisted,我用Twisted托管了几个域静态文件。但是,对于域的子目录,我想重定向到另一个域 例如:提供foo.com静态文件,但foo.com/bar转到foobar.com/bar 对于这种情况,我在Twisted文档中似乎找不到任何东西 更新 我回复Glyph说它不工作,但我把它放错了位置。他的建议当然是绝对正确的。我应该提供更多的初始信息。在这里实施: from twisted.application import internet, service from twisted.web import

我用Twisted托管了几个域静态文件。但是,对于域的子目录,我想重定向到另一个域

例如:提供foo.com静态文件,但foo.com/bar转到foobar.com/bar

对于这种情况,我在Twisted文档中似乎找不到任何东西

更新 我回复Glyph说它不工作,但我把它放错了位置。他的建议当然是绝对正确的。我应该提供更多的初始信息。在这里实施:

from twisted.application import internet, service
from twisted.web import static, server, vhost, script
from twisted.web.util import Redirect


root = vhost.NameVirtualHost()

# Add a default -- htdocs
root.default=static.File("/home/foo")
root.putChild("myredirect", Redirect("http://othersite.com/myredirect"))

# Add a simple virtual host -- bar.com
root.addHost("bar", static.File("bar"))

# Add a simple virtual host -- foo.com
root.addHost("foo", static.File("/home/foo"))

application = service.Application('web')
sc = service.IServiceCollection(application)
site = server.Site(root)
i = internet.TCPServer(80, site)
i.setServiceParent(sc)

这非常简单,尽管这取决于站点的设置方式

不过基本上

from twisted.web.util import Redirect
fooDotComResource.putChild("bar", Redirect("http://foobar.com/bar"))

对不起,Glyph,我应该更具体一些root=vhost.NameVirtualHost()#添加一个默认值--htdocs root.default=static.File(“/home/joestel/foo”)#添加一个简单的虚拟主机--bar.com root.addHost(“bar.com”,static.File(“/home/joestel/bar”)#添加一个简单的虚拟主机--foo.com root.addHost(“foo.photos”,static.File(“/home/joestel/foo”))application=service.application('web')sc=service.IServiceCollection(application)site=server.site(root)#site.putChild(“自拍”,重定向(“))i=internet.TCPServer(80,site)i.setServiceParent(sc)如果有更相关的细节,你应该编辑你的问题。除了在评论中基本上完全无法阅读外,如果没有更多的文字,很难将这些信息与你的问题整合。当你将此代码添加到问题中时,请添加一些文字说明Glyph的答案为什么没有帮助。