我刚刚用taskel安装了lamp,它可以工作。但是
- 在里面
/var/www
我只能用终端的 sudo 创建文件,我不知道为什么。在另一个 Ubuntu 安装中我没有遇到这样的问题。 - 我创建了一个名为的文件
index.php
,但我甚至无法保存它。
这是我从 Sublime Text 得到的错误:
Unable to save /var/www/index.php
Error: unable to create tmp file in /var/www
以下是 Geany 的观点:
Error opening file '/var/www/index.php': Permission denied
The file on disk may now be truncated!
答案1
如果您要成为维护该网站的用户,那么请确保您的用户 ID 可以编辑这些文件。
cd /var/www && sudo chown -R `whoami`:`whoami` .
如果您这样做,那么您将能够修改 /var/www 下的文件,因为这些文件将属于您和您的个人组。-R 以递归方式运行该命令 - 它在当前文件(目录)以及目录中和目录下的所有文件(包括隐藏文件)上运行
如果您最近(几分钟)没有运行 sudo 命令,它会要求您输入个人密码。
也可以设置组等。不过这是最简单的方法。
确保 Web 服务器可以读取这些文件。如果这是个问题,那么 - 因为您现在拥有这些文件,所以您可以使用 chmod 命令:
cd /var/www && chmod -R o+r .
如果这不能使目录可执行,您可能还需要执行以下操作:
find /var/www -type d -print0 | xargs -0 chmod o+x
这将(find)收集目录名称列表并将它们(作为空分隔列表)传递给 xargs,后者将执行 chmod 以使目录可执行。
据相关报道:编辑和添加文件到“/var/www”的最简单方法是什么?, – Desmond Hume 2012 年 11 月 12 日 14:42 向 @DonFaulkner 建议
出于安全原因,最好将 /var/www 保留为 root:root 所有,因此最好sudo chgrp -R www-data /var/www
改为sudo chgrp -R www-data /var/www/*