我的用户无法将文件上传到 www-data 拥有的文件夹

Tho*_*edt 6 permissions webserver

我想我搞砸了我在 Ubuntu 中的权限。

我正在使用我的服务器运行 PHP。我最近遇到一个问题,PHP 无法在var/www-directory 中创建目录,所以我在互联网上搜索。现在 PHP 可以编写和访问任何它应该做的东西,但是作为用户,我不能再创建新的文件夹或文件了。

现在,文件夹的权限是这样的:

drwxrwsr-x 2 www-data www-data [Folders]
Run Code Online (Sandbox Code Playgroud)

这是我使用 sftp 上传时的权限:

-rw-rw-r-- 1 gautvedt www-data [Folders]
Run Code Online (Sandbox Code Playgroud)

我做错了什么,我该如何改变?

Rin*_*ind 9

您需要将自己包含在 www-data 中group

图解法

命令行:

sudo adduser gautvedt www-data
Run Code Online (Sandbox Code Playgroud)

这样您就可以将内容添加到www-data拥有该组的目录中。


还有更多的方法,但这是最简单的一种。


met*_*rph 5

将用户添加到Rinzwindwww-data提到的组后,您应该将权限更改为 755

sudo chmod 0755 -R /var/www
Run Code Online (Sandbox Code Playgroud)

不改变权限,就不能访问(禁止)。所以,它会变成

drwxr-xr-x 1 gautvedt www-data [Folders]
Run Code Online (Sandbox Code Playgroud)

  • 对我来说,任何不需要执行的东西都应该设置为 `644` 而不是 `0755` ;) (2认同)