20190221今天学到了什么? Nginx-uWSGI-Django 静态文件

Django settings url.py工程级(而非应用级) STATIC_URL STATIC_ROOT STATICFILES_DIRS
uWSGI(uWSGI不同于uwsgi) static-map=/static/=
location /static {
}
static 来static去,为什么我的页面不能正确加载静态资源?1.Ngxin和uWSGI的配置文件是否写对了? 2.各个环节static是为谁服务的呢?面向哪个组件的呢?搞不清楚只能瞎猫逮死耗子!破烂的沿海城市!

  1. Nginx可以直接处理static文件请求而绕过真实的server,因为这是它的长处,即就是把url映射到文件路径,一般目录层级是相同的
  2. uWSGI也可以直接处理static文件 static-map=/static/=/path/to/uwsgi/static
  3. Django的settings中定义的特定名称变量,必定是有用的,所以参见文档,或者搜索关键字就是了。STATIC_URL即是你网站的static文件URL(为了在模板语言中使用),STATIC_ROOT即是static文件在你系统上的文件位置,
  4. 当你执行了python manage.py collectstatics,staticfiles(它是一个APP,你可以在INSTALLED_APPS里看到它)就会收集各处的静态文件到 STATIC_ROOT,‘各处’包含STATICFILES_DIRS(应用需要的额外静态文件目录)中的目录和各APP的static目录;
    部署时静态文件的收集:https://docs.djangoproject.com/en/2.2/howto/static-files/#deployment
  5. settings.py中STATIC_ROOT和STATIC_URL的解释:https://docs.djangoproject.com/en/2.2/ref/settings/#static-files
    findstatic命令也会从STATICFILES_DIRS查找静态文件,findstatic是怎么找到静态文件的呢?同样的,settings里定义了STATICFILES_FINDERS;findstatic命令:https://docs.djangoproject.com/en/2.2/ref/contrib/staticfiles/#findstatic
    STATICFILES_FINDERS的配置:https://docs.djangoproject.com/en/2.2/ref/settings/#staticfiles-finders
    collecestatic命令:https://docs.djangoproject.com/en/2.2/ref/contrib/staticfiles/#collectstatic
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值