Flask无法检测到static文件夹中的CSS文件问题求助
Flask静态CSS文件404问题解决方法
核心问题
你的app.py位于子目录中,设置static_folder='static'时,Flask会在app.py所在目录下寻找static文件夹,但实际你的static文件夹和templates同级,在上级目录中,导致路径不匹配。
修复步骤
修改app.py中的静态文件夹路径
在app.py中添加静态文件夹的绝对路径配置,和templates的路径逻辑保持一致:from flask import Flask, render_template, request import os import joblib template_dir = os.path.abspath('../templates') static_dir = os.path.abspath('../static') # 添加静态文件夹绝对路径 app = Flask(__name__, template_folder=template_dir, static_folder=static_dir)确认目录结构正确性
确保项目目录结构如下:项目根目录/ ├── templates/ │ └── index.html ├── static/ │ └── styles/ │ └── style.css └── 子目录/ └── app.py验证效果
重启Flask服务,访问页面后查看终端日志,GET /static/styles/style.css应返回200状态码,不再出现404错误。
额外说明
无需额外设置app.static_url_path = '/static',Flask默认静态URL路径就是/static,你模板中使用{{ url_for('static', filename='styles/style.css') }}的写法是正确的。
内容的提问来源于stack exchange,提问作者e3ham
相关产品推荐
相关产品推荐

