[英]Not Found Error (404) with Static files when running from prompt
我最近从Windows移动到覆盆子pi为我的应用程序。 它加载至少一次,但现在在我的生活中,我无法再次加载静态文件。
如果我从shell运行python脚本作为sudo(或没有)我得到404所有静态文件,动态链接仍然按预期工作。
如果我从IDLE运行它作为'pi'登录它可以正常工作。
相关代码:
from bottle import route, run, get, request, static_file
@get('/pumps')
def pumpData():
return json.dumps(pump.getPumps())
# root dir
@route('/<filename>')
def server_static(filename):
return static_file(filename, root='')
# css dir
@route('/css/<filename>')
def server_static(filename):
return static_file(filename, root='css')
run(host='myip', port=2000, debug=True)
可能导致问题的原因是什么? 我可以猜测它与权限有关,但我不知道如何解决它。
我不认为这是一个许可问题。 (这将返回403.)这很可能是路径问题。
好消息是:修复它应该是直截了当的。 (着名的遗言。;)你应该
static_file
的root
参数,或 os.chdir()
到静态文件根打电话之前bottle.run
。 所以这:
return static_file(filename, root='/path/to/your/static/file/root')
或这个:
os.chdir('/path/to/your/static/file/root')
run(host='myip', port=2000, debug=True)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.