Django项目静态文件无法加载报404错误求助
Django根目录静态文件无法加载的解决方法
核心问题:配置项名称拼写错误
你在settings.py里写的STATIC_DIRS是错误的,Django识别的静态文件目录配置项是**STATICFILES_DIRS**,少了FILES后缀导致框架无法识别根目录下的static文件夹。
修正后的settings.py配置
把配置改成下面这样即可:
import os # 先确保BASE_DIR的定义正确(一般默认配置就是下面这样) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ] # 开发阶段无需启用STATIC_ROOT,保持注释状态即可 # STATIC_ROOT = os.path.join(BASE_DIR, 'assets')
额外必做检查
- 确认
settings.py中DEBUG = True:开发模式下Django会自动处理静态文件路由,DEBUG=False时需要额外执行收集静态文件的命令,但开发阶段建议保持DEBUG开启。 - 重启开发服务器:修改配置后必须重启
python manage.py runserver,否则新配置不会生效。 - 验证静态文件可直接访问:启动服务器后,在浏览器访问
http://localhost:8000/static/style.css,如果能看到CSS文件内容,说明配置已经生效。
模板代码确认
你的HTML写法没问题,只要保证{% load static %}放在模板最顶部(所有静态文件引用之前)即可:
{% load static %} <link href="{% static 'style.css' %}" rel="stylesheet" />
内容的提问来源于stack exchange,提问作者KimGyeongMin-KR
相关产品推荐
相关产品推荐

