flask html js css img reference 404 error flask html js css img reference 404 error flask flask

flask html js css img reference 404 error


You can register additional routes to serve files from your static folder:

from flask import app, safe_join, send_from_directory@app.route('/<any(css, img, js, sound):folder>/<path:filename>')def toplevel_static(folder, filename):    filename = safe_join(folder, filename)    cache_timeout = app.get_send_file_max_age(filename)    return send_from_directory(app.static_folder, filename,                               cache_timeout=cache_timeout)@app.route('/<path:htmlfile>.html')def toplevel_static(htmlfile):    filename = htmlfile + '.html'    cache_timeout = app.get_send_file_max_age(filename)    return send_from_directory(app.template_folder, filename,                               cache_timeout=cache_timeout)

This replicates what the static view does, but for routes starting with /css/, /img/, /js/ or /sound/ instead. HTML files are loaded from your template folder instead.