我已经阅读了一些问答,例如loading-static-content-with-cherrypy但是,我无法弄清楚如何通过不同的路径共享它。我有以下课程:class Root(Base): @cherrypy.expose def index(self): return self.html_head()+self.header()+"Root"+self.footer()+self.html_end() @cherrypy.expose def help(self): return self.html_head()+self.header()+"HELP"+self.footer()+self.html_end()且配置文件为:[global]server.socket_host = "127.0.0.1"server.socket_port = 8080server.thread_pool = 10[/]tools.staticfile.root = "/path/to/app/"[/css/style201306.css]tools.staticfile.on = Truetools.staticfile.filename = "css/style201306.css"从/ help访问CSS时,出现404错误。我必须为我要提供css文件的类中的每个方法添加[path]条目吗?还是我必须使用[global]标签,尽管也许我不想在其他应用程序中使用它?应用程序配置和路径配置条目之间有什么区别?直到知道我将其视为具有2条路径(“ /”和“ / help”)的一个应用程序我通过像这样的配置:# Configurationimport os.pathtutconf = os.path.join(os.path.dirname(__file__), 'myconf.conf')cherrypy.quickstart(root, config=tutconf)这两个网页都以相同的方式加载CSS(实际上是相同的代码):css/style201306.css
1 回答
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
问题在于您的html本身使用的是绝对URL,当内容相同时,没有理由使用相对url,而不是:
<link rel="stylesheet" type="text/css" href="css/style201306.css" />
采用
<link rel="stylesheet" type="text/css" href="/css/style201306.css" />
否则,浏览器将追加当前URL,例如,如果当前URL为/help
,则它将尝试获取:
/help/css/style201306.css
添加回答
举报
0/150
提交
取消