我遇到了针对Django生产环境的Ubuntu Server 13.10上的Cherokee + uWSGI的权限问题。当我在启动切诺基之前以root用户手动启动uWSGI时,一切顺利:
sudo uwsgi --ini /home/instytut21/instytut21l/instytut21/uwsgi.ini
但是当我尝试通过服务器访问该站点(以www-data运行)时,我不断收到503 Service Unavailable
响应并在日志中显示以下消息:
sudo cat /var/log/cherokee/instytut21.error.log
realpath() of /home/instytut21/instytut21.pl/instytut21/uwsgi.ini failed:
[core/utils.c line 3574]
我花了很多时间试图找出导致问题的原因。我尝试将$USER:www-data
和www-data:www-data
的所有权授予600
到777
范围内的各种文件权限。
出于安全原因,我不想以root用户身份运行服务器。如何让切诺基可以访问ini文件?
答案 0 :(得分:0)
我终于在www-data permissions?找到了类似问题的解决方案。我稍微修改了它并通过执行以下命令解决了我的问题。
由我拥有整个目录并分组www-data:
sudo chown -R $USER:www-data /home/instytut21/instytut21.pl/
授予该论坛的所有权限:
sudo chmod -R g+rwx /home/instytut21/instytut21.pl/
确保所有上传的文件获得相同的权限:
sudo chmod -R g+s /home/instytut21/instytut21.pl/