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

部署Django项目时Nginx静态文件加载失败的路径错误问题

Django + Nginx + Gunicorn 静态文件加载修复方案

问题根源

错误日志显示Nginx尝试访问/home/pau/perp2.0/perp/staticfiles/static/admin/js/core.js,但实际collectstatic生成的静态文件存储在/home/pau/perp2.0/perp/staticfiles/目录下。这是Nginx的root指令逻辑导致路径拼接错误。

解决方案

修改Nginx配置中的静态文件处理块,将root替换为alias:

原配置:

location /static/ {
    root /home/pau/perp2.0/perp/staticfiles;
}

修改后:

location /static/ {
    alias /home/pau/perp2.0/perp/staticfiles/;
}

配置说明

  • root指令会将location匹配的路径拼接到指定的根路径后,导致生成错误的文件路径(staticfiles/static/xxx)。
  • alias指令会直接用指定路径替换location匹配的部分,访问/static/xxx时会直接映射到/home/pau/perp2.0/perp/staticfiles/xxx,完全匹配实际文件位置。

后续操作

  1. 确保静态文件已正确收集:
python manage.py collectstatic
  1. 重启Nginx使配置生效:
sudo systemctl restart nginx

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 02:23:26