在使用共享主机多年后,我最近搬到了 Digital Ocean!
我喜欢自由地安装和更改任何我想要的东西,但我不清楚有些事情。
我正在使用安装在 Ubuntu 12.04.4x64 上的 LEMP 堆栈。我关注了This tutorial here创建一个单独的帐户“Archer”,这样我就不必一直使用 root 帐户。
即使 Archer 具有管理员权限,我仍然无法使用 SFTP 编辑服务器中的文件。 SSH 可以,但 SFTP 不行。所以我让 Archer 成为我想要编辑的文件夹的所有者。在 nginx.conf 中,我将用户从“www-data”更改为“Archer”
现在我有一些 PHP 脚本可以在我的服务器中保存图像。他们无权再保存这些图像。 Cronjobs 也不起作用。
我认为它们都是相关的,但我搞砸了一些基本的事情。我非常感谢任何朝着正确方向提供的帮助!
最佳答案
我怀疑将文件夹/文件所有者从“www-data”更改为“Archer”时出现问题,因为这似乎是问题开始的时候。尝试将所有者更改回“www-data”,看看是否可以解决 PHP 脚本权限问题。
然后,如果新用户 Archer 无法编辑某些文件,我会将 Archer 用户添加到有权编辑文件的组中,使用类似 usermod -a -G groupName userName
(这里推荐 https://stackoverflow.com/a/7283086/3412074 或者你可以直接编辑/etc/groups )
将 Archer 添加到“www-data”组应该可行(它似乎是基于 Ubuntu 的事物的标准组)
sudo usermod -a -G www-data Archer
关于linux - 刚接触 nginx 和 Linux,有几个关于权限的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23233041/