Flask应用渲染index.html时控制台出现404错误求助
解决Flask中静态图片404的问题
你遇到的404错误核心原因是:浏览器请求图片的路径没有指向Flask默认的静态文件目录static。根据你的目录结构,图片实际存放在static/dim0/image1.png,但当前请求的是/dim0/image1.png,Flask找不到这个路径下的资源,所以返回404。
下面给你两种可行的解决办法:
方法1:直接使用完整静态路径
在index.html里修改图片的src属性,加上/static前缀,明确指定静态资源的根目录:
<img src="/static/dim0/image1.png" alt="图片描述">
方法2:使用Flask的url_for函数(推荐)
Flask提供的url_for函数可以自动生成静态资源的正确路径,这在部署环境或者后续修改静态目录配置时更灵活。在Jinja2模板中这样写:
<img src="{{ url_for('static', filename='dim0/image1.png') }}" alt="图片描述">
额外验证说明
你的app.py代码和目录结构本身是正确的:
Flask(__name__)会自动识别同级的static和templates目录,不需要额外配置- 图片确实存放在
static/dim0/image1.png,位置没有问题
只要修改图片的引用路径,就能解决这个404问题啦。
内容的提问来源于stack exchange,提问作者Hadif Hatta
相关产品推荐
相关产品推荐

