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

Django中CSS文件无法加载(404错误)求助

Django静态文件404错误:'css\static.css' 无法找到的解决办法

你的settings.py存在重复配置和路径错误,这是导致静态文件找不到的核心原因,模板硬编码路径也不够规范,具体修复步骤如下:

一、修正settings.py的静态文件配置

清理重复定义的配置项,统一静态文件路径设置,替换后的配置如下:

"""
from pathlib import Path
import os

BASE_DIR = Path(__file__).resolve().parent.parent

DEBUG = True

# 其他配置(INSTALLED_APPS、MIDDLEWARE等)保持不变

# 静态文件核心配置
STATIC_URL = '/static/'

# 指定DEBUG模式下查找源静态文件的根目录
STATICFILES_DIRS = [
    BASE_DIR / "static",
]

# collectstatic命令收集静态文件的目标目录,需与源静态目录区分开
STATIC_ROOT = BASE_DIR / "static_cdn"

MEDIA_URL = '/media/'
MEDIA_ROOT = BASE_DIR / 'media'

DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'

二、确认静态文件目录结构

确保项目根目录下的静态文件存放路径符合预期:

项目根目录/
├── static/
│   ├── css/
│   │   └── static.css  # 你的CSS文件必须放在这个位置
├── pushkin/  # 项目配置目录
├── main/  # 业务app目录
└── ...

三、规范模板中的静态文件引用

改用Django官方推荐的{% static %}标签替代硬编码路径,避免路径错误:

  1. 在模板头部加载static标签
  2. 修改CSS引用路径

完整的base.html头部代码:

<!DOCTYPE html>
<html lang="en">
<head>
    {% load static %}
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="{% static 'css/static.css' %}">
    <title>{% block title %}{% endblock %}</title>
</head>

四、重启开发服务器

修改配置后,停止当前运行的python manage.py runserver,重新启动服务让配置生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 11:48:14