CherryPyを使用して静的ファイルを提供しようとしていますが、できません。私はチュートリアルを見てきましたが、そのように設定することは適切に動作していません。CherryPyの静的ディレクトリにサービス
このすべては、Python 3.4に
を使用しているコンフィグ
config = {
'/ws': {
'tools.websocket.on': True,
'tools.websocket.handler_cls': ChatWebSocketHandler,
'tools.websocket.protocols': ['toto', 'mytest', 'hithere']
},
'/assets': {
'tools.staticdir.on': True,
'tools.staticdir.dir': constants.TEMPLATE_PATH
},
}
この
app_root = Root(args.host, args.port, args.ssl, ssl_port=args.ssl_port)
cherrypy.quickstart(app_root, '', config=config)
コンスタントパスが
TEMPLATE_PATH = os.path.join(os.path.dirname(os.path.realpath(__file__)),"assets/")
であるように私はCherryPyにを起動しています
私は上記の定数の代わりにassets/
、/assets/
のようなパスも使用しようとしました。
問題は誰も認識せず、常に404エラーを出します。
上記の設定が有効です。私は自分のアプリの中にほとんど同じものを持っています。 tools.staticdir.dirには絶対パスを使用する必要があります。唯一の違いは、cherrypy.tree.mount(Root()、 "/"、config)、次にcherrypy.engine.start()、次にquickstartの代わりにcherrypy.engine.block()を使用することです。権限が正しいことを確認しましたか? –