Shw*_*nka 15 django ubuntu uwsgi
我正在使用ubuntu 13.04.我正在使用uwsgisudo service uwsgi start
我在django中配置了日志文件 /home/shwetanka/logs/mysite/mysite.log
但是我收到了这个错误 -
ValueError: Unable to configure handler 'file': [Errno 13] Permission denied: '/home/shwetanka/logs/mysite/mysite.log'
Run Code Online (Sandbox Code Playgroud)
我如何解决它?当我将uwsgi作为sudo运行时,这不应该发生.
Luk*_*uka 28
您需要使用chmod
命令修复权限,如下所示:chmod 775 /home/shwetanka/logs/mysite/mysite.log
.
查看文件的所有者ls -l /home/shwetanka/logs/mysite/mysite.log
并使其可写uwsgi
.如果文件不属于uwsgi
,则必须使用该chown
命令.
查看运行服务的用户名ps aux | grep 'uwsgi'
.
如果此时安全性对您不那么重要,请使用即可chmod 777 /home/shwetanka/logs/mysite/mysite.log
.但这不是这样做的方式.
最安全的方法是检查文件的所有者和组,然后在必要时更改它们并相应地调整权限.
我们举个例子吧.
如果我有一个文件,/home/shwetanka/logs/mysite/mysite.log
命令ls -l /home/shwetanka/logs/mysite/mysite.log
提供以下输出:
-rw-rw-r-- 1 shwetanka shwetanka 1089 Aug 26 18:15 /home/shwetanka/logs/mysite/mysite.log
Run Code Online (Sandbox Code Playgroud)
这意味着该文件的所有者是shwetanka
,该组也是shwetanka
.现在让我们读一下这些rwx
位.第一组与文件所有者相关,因此rw-
意味着该文件是所有者可读写的,组可读和可写,并且可由其他人读取.您必须确保文件的所有者是尝试向其写入内容的服务,或者该文件属于该服务的组,否则您将收到permission denied
错误.
现在,如果我有一个uwsgi
USWGI服务使用的用户名,并希望上述文件可以被该服务写入,我必须更改文件的所有者,如下所示:
chown uwsgi /home/shwetanka/logs/mysite/mysite.log
.由于所有者(第一rwx
组)的写入位已设置为1
,因此该文件现在可由UWSGI服务写入.如有任何其他问题,请发表评论.
归档时间: |
|
查看次数: |
32413 次 |
最近记录: |