我正在尝试在/ var / www文件夹(debian)中创build文件,但该文件夹是只读的。 我可以创build一个文件的唯一方法是进入root并在terminal中创build它。 然后我也要编辑那里的内容。 我如何创buildwww目录内的文件和文件夹,或使其不能只读,但仍然是安全的一些如何。 我不明白这是如何工作的…谢谢
您可以将/var/www所有权更改为您的用户或组,或者在/var/www创build一个子目录并赋予您自己的所有权。 如果你的用户名是“david”,那么:
david$ su - root# chown david /var/www
要么:
david$ su - root# mkdir /var/www/david root# chown david /var/www/david
然后,您的用户将能够读取和写入您自己拥有的任何目录中。
sudo chown `whoami` /var/www
这会将/ var / www的所有者设置为当前用户,这是whoami返回的内容。
如果你打算维护一个apache实例,你应该阅读posix系统中文件/目录的权限和所有权。
这可能不是最好的链接,但它是谷歌首先“理解unix权限”: http : //www.perlfect.com/articles/chmod.shtml
您可以通过更改文件夹的权限来执行此操作。
$ chmod 664 myfile /文件夹
为了做你想做的事情,同时不要惹上Web服务器,你必须把你自己和Web服务器的用户或组添加到文件和目录的所有权上。
你可以这样做,如下所示:
1: # chmod -R 775 /var/www/; 2: # chown -R your-user.webserver-group /var/www/
第一行给出用户和组在Web服务器目录中的读,写和执行权限。
第二行保证您是用户在第1行中指出的用户,并且Web服务器组位于Web服务器目录中的组中。
通过这种方式,您将能够在/var/www/目录中创build,修改或删除文件和文件夹,同时Web服务器可以执行正常的任务。
您可以保存到/ tmp,然后使用ftp函数(如PHP的ftp_fput())将临时文件推送到适当的位置。 让服务器ftp“回到自己”看起来很疯狂,但这些文件将由ftp用户拥有,而不是由apache用户拥有。 确保删除tmp文件并保护具有ftp密码的文件。 us3.php.net/manual/en/function.ftp-fput.php