为什么没有chown -R root:www-data在我的Wordpress安装上工作?

时间:2015-07-29 10:31:06

标签: wordpress ubuntu nginx digital-ocean

很久以前,我正在按照本教程向我展示如何在NGINX + Ubuntu(LEMP)设置上安装Wordpress:

https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-nginx-on-ubuntu-14-04

当时我使用root作为下面这条指令片段的用户,我被困在这个部分已经有一段时间了:

The group that nginx operates under is www-data. For the user portion, enter your user account name. We will demonstrate with an account called demo here:

sudo chown -R demo:www-data /var/www/html/*

要澄清,它没有给我任何错误或任何内容,但我发现如果我使用root:www-data进行文件所有权设置,我将无法添加/更新网站上的插件/编辑代码。它总是会提示我输入FTP / SFTP详细信息,即使我输入了正确的凭据,由于权限为drwxr-xr-x(所有者具有写入权限),它也会失败。

所以我试过这个:

sudo chown -R www-data:www-data /var/www/html/*

并且它有效 - 我能够像Wordpress网站管理员一样自由地编写/更新插件。

但是,我现在对所有权和小组的工作方式有了更好的理解,而且我担心通过chown -R www-data:www-data,我自己打开了一个安全漏洞。

我做得对吗?为什么没有root:www-data能够首先更新网站?

2 个答案:

答案 0 :(得分:1)

是的,你做得对。 WhatsApp wa = new WhatsApp(from, "mypassword", "Rajat", false, false); wa.OnConnectSuccess += () => { TempData["connect"] = "Connected to whatsapp"; wa.OnLoginSuccess += (PhoneNumber, data) => { wa.SendMessage(to, msg); TempData["sent"] = "Message Sent"; }; wa.OnLoginFailed += (data) => { TempData["fail"] = data; }; wa.Login(); }; wa.OnConnectFailed += (ex) => { TempData["failure"] = "Connection Failed"; }; wa.Connect(); return View(); 无法正常工作,因为只有root:www-data(root)而不是owner(www-data)才能获得写入权限。如果您将文件夹权限更改为775(drwxrwxr-x),它将起作用。有关permissions

的更多信息

您应该只允许写入应该写入的目录(插件,上传)

答案 1 :(得分:1)

7如果权限是(drwxr-xr-x)并且ngnix运行为'www-data',则它无法更新,修改或创建新文件。

d - means directory
rwx - Read/Write/Execute for the Owner
r-x - Read/Execute for the Group
r-x - Read/Execute for anyone else

您可以使用'chmod'更改权限:

sudo chmod -r 755 /var/www/html/