Ich versuche, eine Seite aus einem statischen Verzeichnis mithilfe der Tornado-API in Python bereitzustellen. This answer is similar to what I am trying to do, aber ich kann es nicht funktionieren.Python Tornado rendern statisches Verzeichnis
Meine Verzeichnisstruktur sieht wie folgt aus (alle statischen Dateien in einem Ordner sind web
genannt):
Ich habe einen Web-Server-Setup wie folgt aus:
class Application(tornado.web.Application):
def __init__(self):
handlers = [
(r'/ws', WSHandler),
(r'/', IndexHandler),
]
settings = {
"debug": True,
"static_path": os.path.join(os.path.dirname(__file__), "web")
}
tornado.web.Application.__init__(self, handlers, **settings)
http_server = tornado.httpserver.HTTPServer(Application())
http_server.listen(8888)
tornado.ioloop.IOLoop.instance().start()
Ich dachte, Diese Zeile:
"static_path": os.path.join(os.path.dirname(__file__), "web")
könnte das Problem behoben haben, aber wenn ich auf die index.html
Datei zeigen:
class IndexHandler(tornado.web.RequestHandler):
@tornado.web.asynchronous
def get(self):
self.render('web/index.html')
Es dient die Seite als erwartet, aber druckt diese Fehlermeldung an die Konsole:
WARNING:tornado.access:404 GET /css/reset.css (::1) 3.57ms
WARNING:tornado.access:404 GET /js/lib/custom-marker.js (::1) 0.96ms
WARNING:tornado.access:404 GET /js/map.js (::1) 2.08ms
WARNING:tornado.access:404 GET /js/websocket-client.js (::1) 1.56ms
WARNING:tornado.access:404 GET /css/index.css (::1) 0.89ms
In diesem minimalistischen Beispiel Wie behebe ich mein Problem? Wo versucht er zu zeigen und kann die Dateien nicht finden?
Jede Hilfe, die Sie anbieten könnten, würde sehr geschätzt werden!
Wow, das hat funktioniert! Ich danke dir sehr! –
Genau. Zitat: "Diese Einstellung wird automatisch alle Anfragen machen, die mit/static/serve von diesem statischen Verzeichnis starten, zB http: // localhost: 8888/static/foo.png wird die Datei foo.png aus dem angegebenen statischen Verzeichnis bedienen. " – Ross