You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django无法加载静态文件返回404错误如何解决?

排查步骤按优先级从高到低:

  • 修正settings.py里的STATICFILES_DIRS配置
    你当前的配置没有绑定项目根目录,相对路径会导致Django无法定位静态文件夹,且如果用元组存储单条路径时必须加后缀逗号,否则会被识别为字符串类型,推荐改成更不易踩坑的列表写法:
    # 先确认配置顶部存在根目录变量,默认生成的项目都会自带,删掉了需要补回
    BASE_DIR = Path(__file__).resolve().parent.parent
    
    STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
    
  • 检查静态文件目录结构与拼写
    确认项目根目录下的目录结构完全匹配:static/main/css/index.css,注意Linux/类Unix系统区分文件名大小写,大小写不匹配也会返回404。
  • 检查INSTALLED_APPS配置
    确认列表里包含django.contrib.staticfiles,这个是Django处理静态资源的默认内置应用,被移除的话要加回来。
  • 检查开发环境路由配置
    如果你用python manage.py runserver做开发服务器,需要在项目根目录的urls.py末尾加上静态文件路由规则:
    from django.conf import settings
    from django.conf.urls.static import static
    
    urlpatterns = [
        # 你原来的路由规则
    ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
    # 若未配置STATIC_ROOT,可替换为 document_root=settings.STATICFILES_DIRS[0]
    
  • 检查DEBUG配置
    开发环境下要保持DEBUG = True,如果设为False,Django的开发服务器不会自动处理静态资源,需要配置STATIC_ROOT后执行python manage.py collectstatic命令收集静态文件,再用Nginx/Apache等web服务器托管静态资源。

内容的提问来源于stack exchange,提问作者goozzy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 04:57:02