Frage

Ich habe eine Verzeichnisstruktur Setup wie:

root/
  js/
  css/
  libs/
  index.html

Von Tornado, ich will js, css, und Libs als statische Verzeichnisse dienen, aber ich kann nur herausfinden, wie einen von ihnen zu dienen. Kann dies geschehen?

War es hilfreich?

Lösung

Nein, es ist nicht möglich.

Sie könnten natürlich einen neuen Ordner erstellen - Eltern und Ort js, css und Libs innerhalb des Ordners, und speciy dann die übergeordneten Ordner als ‚static_path‘

nb. „In der Produktion, möchten Sie wahrscheinlich statische Dateien aus einer optimierteren statischen Dateiserver wie nginx dienen“

Andere Tipps

Wie Schildmeijer von dem Tornado Webseite zitiert, empfehle ich Nginx statische Dateien zu dienen. früh auf dieses Setup zu haben, ist sehr bequem und einfach. Auf diese Weise können Sie auch einige andere potenzielle Vorteile in der Zukunft:

  • Verwenden von Nginx für den Lastausgleich
  • Verwenden von Nginx Griff SSL

Siehe https://stackoverflow.com/a/10165739/1813988

Sie können den statischen Pfad für verschiedene Assets festlegen, indem Handler wie folgt aus (und entfernen Sie die static_path Einstellung in Anwendung) Einstellung:

handlers = [
            (r'/favicon.ico', tornado.web.StaticFileHandler, {'path':  favicon_path}),
            (r'/static/(.*)', tornado.web.StaticFileHandler, {'path': static_path}),
            (r'/', WebHandler)
]
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top