Не может обслуживать статические файлы из cherrypy - PullRequest
5 голосов
/ 25 марта 2011

Я начинаю изучать черри, но я наткнулся на контрольно-пропускной пункт.Я не могу получить статические файлы, чтобы спасти мою жизнь.Я получаю 404. The path '/static' was not found. Я гуглил, но пока не нашел решения.Все, что я хочу сделать, это подать файлы на http://localhost:8080/static

Suggetions?

import os
import cherrypy

class Root(object):
    @cherrypy.expose
    def index(self):
        pass

config = {
    '/static':{
    'tools.staticdir.on': True,
    'tools.staticdir.dir': os.path.join(os.path.dirname(__file__), 'static')
    }
}

cherrypy.tree.mount(Root(), '/', config = config)
cherrypy.engine.start()

1 Ответ

6 голосов
/ 25 марта 2011

Некоторые идеи:

  1. В CherryPy 3.2+ попробуйте tools.staticdir.debug = True в сочетании с log.screen = True или некоторыми другими более предпочтительными настройками ведения журнала. Это поможет больше, чем все, о чем я могу догадаться в этом ответе.
  2. Попробуйте tools.staticdir.dir = os.path.abspath(os.path.join(os.path.dirname(__file__), 'static')); он должен быть абсолютным (или, если .dir не является абсолютным, то должен быть tools.staticdir.root).
  3. В CherryPy 3.1 и выше вам обычно нужно вызывать engine.block () после engine.start ().
...