Python 龙卷风中的相对重定向
Relative redirection in Python tornado
我有一个 tornado 网络应用程序,可以将用户重定向回主页(应用程序的“/”)。然后使用 nginx 作为应用程序之一部署 tornado
网络应用程序(例如 www.helloworld.com/app),重定向不再有效。下面的table应该描述情况。
+-----------------------------+---------------------------------+
| Root URL of tornado app | www.helloworld.com/app |
| Redirect URL | www.helloworld.com/app/redirect |
| Expected URL after redirect | www.helloworld.com/app |
| Actual URL after redirect | www.helloworld.com |
+-----------------------------+---------------------------------+
这是我的 RedirectHandler
class RedirectHandler(tornado.web.RequestHandler):
def get(self):
self.redirect(self.reverse_url("index"))
这是我的申请
handlers = [
tornado.web.url(r'/', IndexPageHandler, name='index'),
tornado.web.url(r'/redirect', RedirectHandler, name='redirect'),
]
Tornado 不适用于去除 URL 前缀的代理。使用完整的 URLs (tornado.web.url(r'/app', IndexPageHandler, name='index')
) 配置你的 Tornado 服务器,并从你的 nginx proxy_pass
指令中删除路径。
我有一个 tornado 网络应用程序,可以将用户重定向回主页(应用程序的“/”)。然后使用 nginx 作为应用程序之一部署 tornado
网络应用程序(例如 www.helloworld.com/app),重定向不再有效。下面的table应该描述情况。
+-----------------------------+---------------------------------+
| Root URL of tornado app | www.helloworld.com/app |
| Redirect URL | www.helloworld.com/app/redirect |
| Expected URL after redirect | www.helloworld.com/app |
| Actual URL after redirect | www.helloworld.com |
+-----------------------------+---------------------------------+
这是我的 RedirectHandler
class RedirectHandler(tornado.web.RequestHandler):
def get(self):
self.redirect(self.reverse_url("index"))
这是我的申请
handlers = [
tornado.web.url(r'/', IndexPageHandler, name='index'),
tornado.web.url(r'/redirect', RedirectHandler, name='redirect'),
]
Tornado 不适用于去除 URL 前缀的代理。使用完整的 URLs (tornado.web.url(r'/app', IndexPageHandler, name='index')
) 配置你的 Tornado 服务器,并从你的 nginx proxy_pass
指令中删除路径。