当有人问他们何时使用Django项目时,我已经预览了一些关于权限问题的问题,这是www-data权限的结果。 即使我在Django项目中为所有文件和文件夹提供了777权限,我仍然无法创建文件夹。
drwxrwxrwx 4 www-data www-data 4096 Mar 3 11:40 blog
-rwxrwxrwx 1 www-data www-data 38912 Mar 1 16:52 db.sqlite3
-rwxrwxrwx 1 www-data www-data 539 Mar 1 16:37 manage.py
drwxrwxrwx 3 root root 4096 Mar 3 11:49 media
drwxrwxrwx 3 www-data www-data 4096 Mar 3 11:38 project
在我的views.py中:
from django.shortcuts import render
import os
from django.http import HttpResponse
def index(request):
return HttpResponse('Hello World')
def create(request):
if(os.mkdir("hello/")):
return HttpResponse("success")
else:
return HttpResponse("failed")
# Create your views here.
以下是错误信息:
[Errno 13] Permission denied: 'hello/'
Request Method: GET
Request URL: http://58.87.85.248/create/
Django Version: 2.0.2
Exception Type: PermissionError
Exception Value:
[Errno 13] Permission denied: 'hello/'
Exception Location: /var/www/html/project/blog/views.py in create, line 10
Python Executable: /usr/bin/python3
Python Version: 3.5.2
Python Path:
['/var/www/html/project',
'/usr/lib/python35.zip',
'/usr/lib/python3.5',
'/usr/lib/python3.5/plat-x86_64-linux-gnu',
'/usr/lib/python3.5/lib-dynload',
'/usr/local/lib/python3.5/dist-packages',
'/usr/lib/python3/dist-packages']
Server time: Sat, 3 Mar 2018 04:58:45 +0000
非常感谢您查看我的问题。
答案 0 :(得分:1)
chmod 777确定文件模式,但chown确定文件/文件夹所有者。验证文件夹(而不是文件)是否由尝试写入该进程的进程的同一用户拥有。您可以尝试使用
递归地指定文件和文件夹所有权chown -R username:username /path/to/folder