博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django 怎么加权限 静态资源目录_django静态文件配置
阅读量:6502 次
发布时间:2019-06-24

本文共 1112 字,大约阅读时间需要 3 分钟。

开发环境配置

需要下面几个步骤

1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等

2. 确保settings.py中的INSTALLED_APPS中包含django.contrib.staticfiles

3. 设置settings.py中的STATIC_URL的值为“/static/”

4. 在模版中使用{

{ STATIC_URL }}作为静态文件路径前缀。比如纯在图片文件your_app/static/img/logo.png,那么应用代码为%E2%80%9D%7B%7B

5. 渲染模版的Context对象需要换成RequestContext,否则模版中无法引用到STATIC_URL对应的值。

特别注意:按照上述设置,settings.py中的DEBUG选项必须设置为True,否则'/static/'无法映射到静态文件目录。参见这里:http://stackoverflow.com/a/4566907/1114397

生产环境配置

我的发布环境是apache,这里只介绍相关配置。

使用apache的静态发布配置,而不使用django的配置,这也是django推荐的方式,因为django认为静态文件配置的方法交给服务器,会更有效。你所需要做的就是在apahce的配置文件中添加一个alice,如下

Alias /static "/your_wsgi/your_app/static"

# 注意结尾都没有斜杠,全路径也没有。

# 如果alias后面的值有反斜杠结尾,那么全路径也需要有,保持一致

“/static”对应django settings.py中配置的STATIC_URL的值。然后添加directory选项,配置相关目录的权限。Apache 2.4版本开始,对directory配置做出了调整,所以这里需要注意,如下:

Apache v2.4及以上版本,

Require all granted

< /Directory>

Apache v2.4以下版本

Options Indexes FollowSymLinks

Order allow,deny

Allow from alli

< /Directory>

注意上面红色部分。

Tips:如果访问静态图片遇到403错误,此时说明路径配置成功,离成功不远了。只是路径权限没有配置正确,这时可以看看apahce错误日志,如果出现“client denied by server configuration”,说明是directory的权限没有配置正确,可以查看自己的apache版本,然后做出响应配置。

转载地址:http://jmlyo.baihongyu.com/

你可能感兴趣的文章
怎么看电脑有没有安装USB3.0驱动
查看>>
overflow清除浮动的原理
查看>>
Spring Boot 使用parent方式引用时 获取值属性方式默认@
查看>>
解决maven下载jar慢的问题(如何更换Maven下载源)
查看>>
linux安装gitLab
查看>>
concurrent包的实现示意图
查看>>
golang os.Args
查看>>
Linux常用命令
查看>>
spring-data-elasticsearch 概述及入门(二)
查看>>
1.12 xshell密钥认证
查看>>
3.2 用户组管理
查看>>
ibatis 动态查询
查看>>
汇编语言之实验一
查看>>
git 调用 Beyond Compare
查看>>
SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)[转]
查看>>
android实现图片识别的几种方法
查看>>
mvc学习地址
查看>>
masonry 基本用法
查看>>
Word产品需求文档,已经过时了【转】
查看>>
dtoj#4299. 图(graph)
查看>>