[Django1.6]The MEDIA_ROOT and STATIC_ROOT settings must different 解决
该项目有一个图片上传功能,为了把上传路径很简单,写在同一个静态文件路径,于wi7执行机器上没问题,今centos我们报道了机上,如下面的错误:
django.core.exceptions.ImproperlyConfigured: The MEDIA_ROOT and STATIC_ROOT settings must have different values
google下。直接就到了django的文档中:
MEDIA_ROOT and STATIC_ROOT must
have different values. Before STATIC_ROOT was
introduced, it was common to rely or fallback on MEDIA_ROOT to
also serve static files; however, since this can have serious security implications, there is a validation check to prevent it.
文档中明白的指出MEDIA_ROOT 跟 STATIC_ROOT不能用同一个路径。
在STATIC_ROOT么有引进之前使用MEDIA_ROOT路径来存储静态文件的(css,js之类),为了安全。如今基本是使用MEDIA_ROOT
来存储上传文件,STATIC_ROOT来存储静态文件。
解决“:
settings中改动:
把MEDIA_ROOT 定义为别的路径
MEDIA_URL = '/upload/'
MEDIA_ROOT = os.path.join(BASE_DIR,'uploadfiles').replace('\\','/')
然后在全局的urls配置用加入
url(r'^upload/(?
P<path>.*)$','django.views.static.serve',{'document_root': settings.MEDIA_ROOT}),
最后在页面显示图片的地方改动下连接地址就能够了。
<a href="/upload/{{ user.userinfo.license }}" target="_blank">查看</a>
基本上就这个三个步骤,就能替换原来的存储路径了。
本文出自 “orangleliu笔记本”博客,转载请务必保留此出处http://blog.csdn.net/orangleliu/article/details/40542099
作者: orangleliu
版权声明:本文orangleliu(http://blog.csdn.net/orangleliu/)原创文章,文章转载申报。
[Django1.6]The MEDIA_ROOT and STATIC_ROOT settings must different 解决的更多相关文章
- Django下MEDIA_ROOT, MEDIA_URL, STATIC_ROOT, STATIC_URL解惑
Django中settings中的四个设置参数的一些故事: MEDIA_ROOT, MEDIA_URL, STATIC_ROOT, STATIC_URL 1.MEDIA_ROOT与MEDIA_URL ...
- media_root以及static_root配置
# At the top of settings/base.pyfrom os.path import join, abspath, dirnamehere = lambda *x: join(abs ...
- Mysql安装过程中出现apply security settings错误的解决方法
在学习Mysql的过程中,首先要安装Mysql.然而在第一遍安装过程中难免会出现安装错误的时候,当卸载后第二次安装(或者第三次甚至更多次)的时候,往往在安装最后一步会出现apply security ...
- MySQL安装时出现Apply Security Settings错误的解决办法
windows版mysql安装执行程序下载地址: https://dev.mysql.com/downloads/file/?id=473605 点击下面的No thanks, just start ...
- MySQL安装过程中出现“APPLY security settings错误”的解决方式
***********************************************声明*************************************************** ...
- MySQL安装时出现Apply Security Settings错误的解决办法(转)
最近在学习MySQL时,下载了MySQL5.5版本的安装包,在配置向导的最后的页面却出现了Apply Security Settings的错误.第一次安装时比较顺利,中途卸载了一下,结果第二次安装的时 ...
- Python3.5 + django1.8.5 安装”import pymysql pymysql.install_as_MySQLdb()”的解决方法
最近在学习Python,打算先看两个在线教程,再在github上找几个开源的项目练习一下,在学到"被解放的姜戈"时遇到django同步数据库时无法执行的错误,记录一下. 错误现象: ...
- Android NDK 【错误】The method loadLibrary(String) is undefined for the type Settings.Syste
[错误]The method loadLibrary(String) is undefined for the type Settings.System [解决方法] 不要加入包import andr ...
- django模板报错:Requested setting TEMPLATE_DEBUG, but settings are not configured. You must either define
转自:http://blog.csdn.net/xiaowanggedege/article/details/8651236 django模板报错: Requested setting TEMPLAT ...
随机推荐
- live555 for Android
因为Live555 包中未提供Android 的config 所以编译器来比較麻烦,须要自己编写Android.mk ,下面是我通过 改动 现有的config文件,在cygwin实现 编译的过程,co ...
- DevExpress控件中LayoutControl的使用
原文:DevExpress控件中LayoutControl的使用 C#开发中,软件布局设计,主要用TableLayoutPanel能很好地支持缩放功能,对自身的Label.TextBox等控件支持的很 ...
- RaspberryPI 连接rs232模块接线图
- Java反射探索研究(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankakay 摘要:本文详细深入讲解是Java中反射的机制,并介绍了如何通过反射来生成对象.调用函数.取得 ...
- PHP扩展memcache模
研究yii当配套部件,发现自己PHP甚至不支持memcache该模块,于是,我就展开位. 本机环境:win8.1 开发环境:php 5.5 第一步:先把所需的文件包下载全然,我已经打包好,这里能够下 ...
- enumerateObjectsUsingBlock、enumerateObjectsWithOptions、enumerateObjectsAtIndexes、makeObjectsPerfor使用
OC至 NSArray它提供了一个方便的遍历block,以下具体说明 第一.enumerateObjectsUsingBlock NSArray *array=@[@"aa",@& ...
- python遗产
1. python类方法的定义: class Animal(): def __init__(self,name): self.name=name; def show(self): print s ...
- 小巧的UML工具-UMLet
画简单的UML图时非常方便 比如我画blog中的流程图就是用的UMLet
- Stack-based buffer overflow in acdb audio driver (CVE-2013-2597)
/* 本文章由 莫灰灰 编写,转载请注明出处. 作者:莫灰灰 邮箱: minzhenfei@163.com */ 1. 漏洞描写叙述 音频驱动acdb提供了一个ioctl的系统接口让应用层调用, ...
- Cocos2d-x学习笔记(9)(CCTextFieldTTF使用输入框)
1.CCTextFieldTTF创建和使用 CCTextFieldTTF::create(const char* placeholder,const char* fontName.float font ...