我在使用Django 1.10、uWSGI和Nginx处理静态文件时遇到了困难。
我有一个index.html文件,其中包含CDN的。
Django文档(即这里 )表示“将静态文件传输到存储提供者或CDN”。这是什么意思,“转移到CDN"?你从那里得到文件的不是CDN吗?
settings.py包含,
STATIC_URL = '/static/'
STATIC_ROOT = 'nonAppBoundStaticDirectory'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]正在运行
$ python manage.py collectstatic这个地方所有的CDN都在我的目录‘非阿皮边界’中吗?
如果是的话,我如何在模板中使用它呢?
index.html摘录
<!-- Bootstrap -->
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/css/bootstrap.min.css">摘自/etc/nginx/nginx.conf
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
}
........谢谢,
发布于 2016-12-04 17:13:13
可能只是拼写错误。在您的settings.py中,目录名中有一个额外的n。
STATIC_ROOT = 'nonAppBoundStaticDirectory'在nginx配置中,您有不同的拼写。
location /static {
alias /home/ofey/djangoForum/noAppBoundStaticDirectory; 确保路径指向完全相同的目录。在这两种情况下使用绝对路径可能是个好主意。
发布于 2021-05-17 02:55:24
如果您在开发服务器中工作--从STATIC_ROOT中删除settings.py。您的settings.py现在应该如下所示:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]如果您在生产中工作--从STATICFILES_DIRS中删除settings.py。您的settings.py现在应该如下所示:
STATIC_URL = '/static/'
STATIC_ROOT = 'nonAppBoundStaticDirectory'别忘了跑:
python manage.py collectstatichttps://stackoverflow.com/questions/40959202
复制相似问题