Zot*_*ote 19 python subdomain google-app-engine
如何在谷歌应用引擎(python)中使用子域.
我想获得第一个域名部分并采取一些行动(处理程序).
示例:
product.example.com - >将其发送到产品处理程序
user.example.com - >将其发送给用户处理程序
实际上,使用虚拟路径我有这个代码:
application = webapp.WSGIApplication(
[('/', IndexHandler),
('/product/(.*)', ProductHandler),
('/user/(.*)', UserHandler)
]
Run Code Online (Sandbox Code Playgroud)
Nic*_*son 26
WSGIApplication无法基于域进行路由.相反,您需要为每个子域创建一个单独的应用程序,如下所示:
applications = {
'product.example.com': webapp.WSGIApplication([
('/', IndexHandler),
('/(.*)', ProductHandler)]),
'user.example.com': webapp.WSGIApplication([
('/', IndexHandler),
('/(.*)', UserHandler)]),
}
def main():
run_wsgi_app(applications[os.environ['HTTP_HOST']])
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
或者,您可以编写自己的WSGIApplication子类,该子类知道如何处理多个主机.