![“合并”多个 FTP 目录,使它们显示为一个](https://linux22.com/image/764653/%E2%80%9C%E5%90%88%E5%B9%B6%E2%80%9D%E5%A4%9A%E4%B8%AA%20FTP%20%E7%9B%AE%E5%BD%95%EF%BC%8C%E4%BD%BF%E5%AE%83%E4%BB%AC%E6%98%BE%E7%A4%BA%E4%B8%BA%E4%B8%80%E4%B8%AA.png)
我拥有一个允许用户上传文件的网站。我的文件也放在上面,但我不想把他们的文件和我的文件混在一起,以防有人上传一堆恶意文件,需要批量删除。我不用一个个地追查他们,而是直接删除他们的用户文件夹,然后他们就会从网站上消失,但其他用户的文件和我的文件都会保留下来。
现在问题来了,我想让用户浏览网站上的目录,但它会显示所有文件,包括我的和用户的文件,就好像它们包含在一个目录中一样。所以我使用 PHP 来做到这一点,然后只向用户显示它,它工作正常。
问题是,我想允许用户使用 FTP 浏览它们,就像它们也是 1 个目录一样。当然这不可能实现,因为 FTP 只查看我告诉它的文件夹。第一个想法是符号链接,但我使用的是 VSFTPD,显然它不支持符号链接。我打算编写一个脚本,每天更新并创建一种“伪目录”,其中所有内容都将组合为符号链接。这样,至少链接会在同一个文件夹中,而不会真正改变文件夹布局的实际限制。我只会使用 python 或其他东西,但鉴于我不能使用符号链接,这似乎也不是一种选择。
为了让您了解一些背景信息,下面是我的文件所在的位置:
/drives/ares/webroot/mywebsite/files/SOMEFOLDER/SOMEFILE.txt
用户文件的构造方式如下
/drives/ares/webroot/mywebsite/users/SOMEUSERNAME/files/SOMEFOLDER/SOMEFILE.txt
对于网站,我使用 PHP 递归遍历每个用户,如果用户文件夹包含“SOMEFOLDER”,它将读取其中的所有文件并将其与另一个“SOMEFOLDER”(我的文件)中的文件一起显示。这很难解释,但我基本上只是将大量目录组合在一起,以便它们在我的网站上显示为 1 个,以便于浏览。我现在正尝试使用 FTP 做同样的事情,但由于 FTP 非常简单,我很难找到解决方案。有人知道我如何实现这一点吗?感谢您的帮助,抱歉这个问题太宽泛了,但我已经为这个问题绞尽脑汁了一段时间。
PS:我使用的是 Arch Linux