【发布时间】:2014-09-05 19:44:44
【问题描述】:
说明
我有一个网站,每个人都可以上传文件。它就像一个共享主机,但除了您不应该获取已上传文件的 URL 并且也没有其他可能访问这些文件的可能性。
上传效果很好,但我想知道它是否违反了生产中的某些安全策略。尤其是因为我缺乏这个 MEDIA_URL。
代码:
settings.py
>MEDIA_ROOT = '/var/www/project/media/'
MEDIA_URL = '/media/'
models.py
>class File(models.Model):
myfile = models.FileField(upload_to='%Y/%m/%d/%H/%M/%S')
forms.py
>class FileForm(forms.Form):
myfile = forms.FileField()
urls.py
>urlpatterns = patterns('',
url(r'^$', views.upload),
)
views.py
>def upload(request):
if request.method == 'POST':
form = FileForm(request.POST, request.FILES)
if form.is_valid():
newdoc = File(myfile = request.FILES['myfile'])
newdoc.save()
return render(request, 'project/index.html', {'form': form})
else:
form = FileForm()
return render(request, 'project/index.html', {'form': form})
【问题讨论】:
标签: django