首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有Nginx和uWSGI的Django CDN

问有Nginx和uWSGI的Django CDN
EN

Stack Overflow用户
提问于 2016-12-04 13:37:58
回答 2查看 1.5K关注 0票数 0

我在使用Django 1.10、uWSGI和Nginx处理静态文件时遇到了困难。

我有一个index.html文件,其中包含CDN的。

Django文档(即这里 )表示“将静态文件传输到存储提供者或CDN”。这是什么意思,“转移到CDN"?你从那里得到文件的不是CDN吗?

settings.py包含,

代码语言:javascript
复制
STATIC_URL = '/static/'

STATIC_ROOT = 'nonAppBoundStaticDirectory'

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]

正在运行

代码语言:javascript
复制
$ python manage.py collectstatic

这个地方所有的CDN都在我的目录‘非阿皮边界’中吗?

如果是的话,我如何在模板中使用它呢?

index.html摘录

代码语言:javascript
复制
  <!-- Bootstrap -->
  <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/css/bootstrap.min.css">

摘自/etc/nginx/nginx.conf

代码语言:javascript
复制
server {
    # the port your site will be served on
    listen  80;
    # the domain name it will serve for
    server_name example.com;   # substitute your machine's IP address or FQDN
    charset     utf-8;

    #Max upload size
    client_max_body_size 75M;   # adjust to taste

    # Django media
    location /media  {
                alias /home/ofey/djangoForum/fileuploader/uploaded_files;      # your Django project's media files
    }

        location /static {
                alias /home/ofey/djangoForum/noAppBoundStaticDirectory;     # your Django project's static files
        }
........

谢谢,

EN

回答 2

Stack Overflow用户

发布于 2016-12-04 17:13:13

可能只是拼写错误。在您的settings.py中,目录名中有一个额外的n。

代码语言:javascript
复制
STATIC_ROOT = 'nonAppBoundStaticDirectory'

在nginx配置中,您有不同的拼写。

代码语言:javascript
复制
location /static {
    alias /home/ofey/djangoForum/noAppBoundStaticDirectory; 

确保路径指向完全相同的目录。在这两种情况下使用绝对路径可能是个好主意。

票数 1
EN

Stack Overflow用户

发布于 2021-05-17 02:55:24

  1. 在开发服务器中工作

如果您在开发服务器中工作--从STATIC_ROOT中删除settings.py。您的settings.py现在应该如下所示:

代码语言:javascript
复制
    STATIC_URL = '/static/'

    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static'),
    ]
  1. 生产

如果您在生产中工作--从STATICFILES_DIRS中删除settings.py。您的settings.py现在应该如下所示:

代码语言:javascript
复制
    STATIC_URL = '/static/'

    STATIC_ROOT = 'nonAppBoundStaticDirectory'

别忘了跑:

代码语言:javascript
复制
    python manage.py collectstatic
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40959202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档