在var/www/html/上设置正确的权限。

重新安装15.1版本后,我的权限出现了很多问题。我不得不经常手动调整它们。这意味着我做错了什么。
以下是我的操作步骤:
我创建一个文件夹。权限设置为:所有者:我,组:Jos(我是唯一的用户)。两者都具有创建和删除文件的权限。在这些设置下,Joomla不会删除安装文件夹。 手动删除后,我收到错误消息:
No configuration file found and no installation code available. Exiting...

现在我使用命令:
sudo chown -R www-data:jos /var/www/html/my_site

现在所有者是 `www-data`(创建和删除)。组是 `jos`(创建和删除)。安装正常工作。网站也能正常运行。但是我不能在其中做任何事情,因为我不是所有者。`www-data` 是所有者, 而我只有访问文件的权限。
我正在使用 Lamp。
请问如何正确设置它?
1个回答

你的网页用户不应该对你的内容具有写权限,所以要解决这个问题,你需要将自己添加到www-data组中,然后翻转你的chown命令。
sudo usermod -a -G www-data jos
sudo chown -R jos:www-data /var/www/html/my_site

然后将您的权限设置为2755(目录)和644(文件),或者如果您想要更安全(或多疑),分别设置为2750和640。
find /var/www/html -type f -exec chmod 644 {} \;
find /var/www/html -type d -exec chmod 2755 {} \;

这将允许您的用户(jos)对内容拥有写权限,而www-data用户则拥有所需的读权限。这也是一种更好的安全实践,因为禁止了www-data用户修改内容,从而限制了潜在攻击者可能造成的损害。还有一件需要注意的事情是,如果Joomla或其他程序确实需要修改/var/www/html/my_site文件夹中的内容,我建议仅手动添加写权限给那些文件/目录。
chmod g+w /var/www/html/my_site/joomalwriteshere/

既然我注意到你在这里提到了Joomla,这是一个关于他们推荐权限的来源链接:https://docs.joomla.org/Verifying_permissions

抱歉。我按照给出的步骤操作了,但没有成功。重新启动了Ubuntu,再次尝试了一下。依然无效。没用。 - Jos
现在的所有者是:我(jos),可以创建和删除文件。组是www-data,可以访问文件。封闭文件的权限为文件读写,文件夹创建和删除。卸载文件夹不是自动完成的,我必须手动删除它。 - Jos
一个本地主机上的WordPress网站现在要求输入FTP凭据,之前没有这个要求。 - Jos
这听起来像是特定于应用程序的问题。所以我明白你正在使用一个LAMP设置,但你正在使用JOOMLA和WP(wordpress),所以问题在于这些程序可能需要特殊/特定的权限,或者在安装它们时你可能需要成为特定的用户(比如www-data用户而不是jos,或者使用sudo)。 - snorp
WordPress有一篇关于权限的精彩文章:https://codex.wordpress.org/Changing_File_Permissions - snorp