python - 在 django 应用程序中保存静态文件的位置,如何从 nginx 的多个位置提供静态文件

标签 python django nginx

我有一个 django 应用程序,使用 nginx 提供静态文件。我想在项目中包含应用程序(功能)。

我想创建 newapp 并将文件放在 static 文件夹下。 (但我需要更改 nginxconf 来提供这些目录中的文件)

project
 |
 |-templates
 |-static
    |
    |-js
    |-css


 newapp
 |
 |-static
    |
    |-js
    |-css
  1. 哪种是保留静态文件、模板的首选方式(在应用程序中?(在该应用程序下进行了测试,我觉得更清楚))

  2. 如果我们想从两个位置提供静态文件,如何更改 nginx 配置?

我当前的 nginx 配置就像

location /static/ {  alias /myproject/location/static/; }
  • 如果我们将所有内容都放在主项目中(静态、模板),维护起来不会变得复杂吗?

  • 有没有办法像这样匹配

    别名/myproject/*/static

  • 最佳答案

    这正是我们拥有staticfiles app的原因。将每个应用程序的 Assets 放入该应用程序中,然后在部署时运行manage.pycollectstatic,它们将全部收集在/static/下的子目录中

    关于python - 在 django 应用程序中保存静态文件的位置,如何从 nginx 的多个位置提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26018372/

    相关文章:

    php - 无法输出没有断行的大字符串 block (nginx+php)

    python - Mysql 与 Django 设置

    python - 简化 Django 模型 save() 表达式

    ssl - nginx 反向代理背后的 neo4j web 界面

    Django 模型字段 getter/setter

    javascript - 在html中单击后创建onClick内容

    logging - Nginx:记录到系统日志

    python - "No space left on device"拟合 Sklearn 模型时出错

    python - 如何通过外部脚本用scrapy获取爬虫返回数据?

    python - 无法在 appium python 中找到定位器