我设法将DocumentRoot目录格式更改/var/www
为,/home/user/www
并且工作正常,除了我无法复制/粘贴甚至删除没有root访问权限的任何文件的问题。
由于我使用的是SASS编译器软件,其中一些文件在项目目录中进行编译和输出。它不再输出任何文件并拒绝授予权限。
我需要帮助,以使所有DocumentRoot子文件夹和文件都具有完全权限,而无需root访问。
sudo su
假设您具有su权限,那么以下所有命令(如果不是)都应该以sudo开头
将您自己添加到服务器用户组
adduser user:www-data (could be another user group)
更改文档根目录中所有文件的所有权,以确保服务器可以管理它们
chown www-data:www-data -R /path/to/directory
附带说明,chown可以与your-user:www-data一起运行,这意味着您拥有文件,但Web服务器仍然可以访问它们。(如果这样做,您肯定要使用umask,否则您可能会经常更改所有权和权限,因为Web服务器将拥有它创建的文件)。
使所有文件(包括目录)都可以读写(使用chmod和-R递归标志可能带来安全隐患,因此请谨慎使用)
chmod g+rw -R /path/to/directory
现在,如果文件是由Web服务器本身创建的,则它们通常通常仅对所有者具有写访问权,而对组则具有读权限。要解决此问题,您将需要如上所述查看umask并获得有关在何处设置umask以及针对特定应用程序进行正确设置的说明。
对于apache 2(我使用过nano,因为我发现它是终端中最简单的编辑器)。
nano /etc/apache2/envvars
add to end of file: umask 002
save the file.
service apache2 restart
可以在这里找到:https : //stackoverflow.com/questions/428416/setting-the-umask-of-the-apache-user,可能应该是patrick fisher提交的可接受的答案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句