【问题标题】:the django + nginx can't load staticfilesdjango + nginx 无法加载静态文件
【发布时间】:2017-01-24 06:43:33
【问题描述】:

最近当我在我的 django 应用程序中使用 { %load staticfiles % } 时,我发现它显示如下图所示: enter image description here

。设置文件是这样的:

STATIC_DIR = os.path.join(BASE_DIR,'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [STATIC_DIR, ]
STATIC_ROOT = os.path.join(BASE_DIR, "static/")

文件所在目录如下:

web1->web1->settings.py
we1->static->img->ocen.jpg

base.html 是这样的:

<!DOCTYPE html>

{ % load staticfiles % }

<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>

<img src="{ % static "img/ocen.jpg" % }" alt="show picture">

</body>
</html>

ngix 配置文件是这样的:

location /static/ {
        alias /home/yumo/web1;
    }

为了找到原因,我尝试如下:首先,我在浏览器中点击:domainname/static/img/ocen.jpg。我可以在浏览器中看到我的 ocen.jpg。第二:我只是在我的本地虚拟机中创建 django 应用程序,而不使用 uwsgi 和 nginx。我可以正常使用 { % load staticfiles %} 来实现我的目标。我只是真诚地希望有人给我一些有用的建议,谢谢!

【问题讨论】:

    标签: python django nginx uwsgi


    【解决方案1】:

    在 django 模板中 tags 看起来像这样 {% tag %} 请注意 {% 之间没有空格。

    所以不是

    { % load staticfiles % }
    <img src="{ % static "img/ocen.jpg" % }" alt="show picture">
    

    你应该这样做:

    {% load staticfiles %}
    <img src="{% static 'img/ocen.jpg' %}" alt="show picture">    
    

    【讨论】:

      猜你喜欢
      • 2018-05-08
      • 1970-01-01
      • 2021-11-20
      • 2014-07-12
      • 2018-03-19
      • 2011-11-26
      • 2021-08-08
      • 2016-08-15
      • 2020-07-18
      相关资源
      最近更新 更多