Django静态资源加载异常:Bootstrap CSS正常但JS文件404报错
解决Django中Bootstrap JS文件404错误的方法
1. 修正Script标签的写法
你的HTML中JS标签使用了自闭合写法:
<script src="{% static 'bootstrap/js/bootstrap.min.js' %}" />
HTML规范中,<script>标签不能自闭合,必须使用完整的闭合标签:
<script src="{% static 'bootstrap/js/bootstrap.min.js' %}"></script>
自闭合写法会导致浏览器解析异常,无法正确发起JS文件的请求,这是此类问题最常见的诱因。
2. 验证JS文件的实际路径
- 确认项目根目录下的
static/bootstrap/js/文件夹中确实存在bootstrap.min.js文件,文件名、大小写完全匹配(Linux/macOS系统对文件名大小写敏感)。 - 对比CSS文件的路径结构:CSS能正常加载说明
static/bootstrap/css/路径有效,JS路径static/bootstrap/js/应与它同级,检查是否存在目录拼写错误。
3. 确认静态资源配置正确性
检查settings.py中的配置:
STATIC_URL = "static/" STATICFILES_DIRS = [ BASE_DIR / "static", ]
- 确保
BASE_DIR指向正确的项目根目录(默认Django项目中BASE_DIR = Path(__file__).resolve().parent.parent,此配置一般无问题)。 - 如果是生产环境(
DEBUG=False),必须执行python manage.py collectstatic命令,将所有静态文件收集到STATIC_ROOT指定的目录中,否则无法访问静态资源;开发环境DEBUG=True时无需此操作。
4. 清除浏览器缓存
浏览器可能缓存了旧的错误请求,按下Ctrl+F5强制刷新页面,或直接清除浏览器缓存后重新测试。
内容的提问来源于stack exchange,提问作者Vadym
相关产品推荐
相关产品推荐

