我想使用桌面应用程序通过 FTP 将文件发送到服务器(我在 ubuntu 服务器上使用 proftpd)。在发送文件之前,我先尝试创建目录。我认为有两种方法可以实现这一点:
- 使用 FTP 的 MKD 命令创建目录
- 向 php 页面发布请求并使用 PHP 创建目录
目前,我正在尝试探索第二种选择,除了一件事之外,它是可行的:我正在创建的目录归 www-data 所有,而不是 FTP 用户所有(假设它名为“person”)。为了确保“person”可以将文件放入 PHP 创建的目录中,我做了这些事情
- 将“person”分配到与 www-data 相同的组
- 创建具有 0770 权限的目录
- 编辑 proftpd.conf,使 php 创建的目录的父目录仅受 umask 002 的影响
到目前为止,我几乎没有成功。我创建的目录(通过 PHP)始终具有 0750 权限,即使我在 PHP 中明确声明赋予它 0750 权限,并且已在 proftpd.conf 中编辑了所有 umask。我甚至尝试注释所有 umask,但无济于事。因此,接下来我想尝试使用 chown 将目录的所有权更改为“person”。不幸的是,我发现只有超级用户才能使用 chown。我尝试将 www-data 添加到 sudo 组,但我仍然无法使用 chown。那么,我该怎么办?或者有什么方法可以实现我的目标?我是 ubuntu 的完全初学者,所以这真的让我很困惑