我想知道是否有更好的方式来处理我的index.html与Tornado文件。
有没有更好的方法来处理与Tornado index.html?
我对所有请求都使用StaticFileHandler,并使用特定的MainHandler来处理我的主要请求。如果我只用StaticFileHandler我得到了一个403 Forbidden错误
GET http://localhost:9000/
WARNING:root:403 GET/(127.0.0.1): is not a file
这里我现在该怎么做:
import os
import tornado.ioloop
import tornado.web
from tornado import web
__author__ = 'gvincent'
root = os.path.dirname(__file__)
port = 9999
class MainHandler(tornado.web.RequestHandler):
def get(self):
try:
with open(os.path.join(root, 'index.html')) as f:
self.write(f.read())
except IOError as e:
self.write("404: Not Found")
application = tornado.web.Application([
(r"/", MainHandler),
(r"/(.*)", web.StaticFileHandler, dict(path=root)),
])
if __name__ == '__main__':
application.listen(port)
tornado.ioloop.IOLoop.instance().start()
+1
用'r“/ $”'和'r“/(.*)$”'替换'r“/”'和'r“/(.*)”'会更好。 –