所以,这是我必须使用的设置:
我在不同的位置总共有五台服务器。其中一台服务器纯粹是用于托管静态文件的web服务器。其他四台服务器是单独的FTP服务器,每台服务器都包含用户通过PHP脚本上传的文件。
我想要做的是能够选择具有最多可用空间的服务器,并向其发送下一个用户上传的文件。我到处搜索,似乎没有任何方法可以只使用FTP命令来实现。
我发现了一个关于Determining the Free Space of an FTP Server的问题,它表明可以使用Linux Shell脚本定期创建和更新文件,但是,我拥有的服务器仍然是Windows机器。
我唯一的解决方案是在FTP服务器上使用一个包含由disk_free_space()确定的剩余文件大小的简单index.php来托管web服务器,但对于这么简单的东西来说,这似乎有点过了。
我正在寻找的是一种用FTP命令找出这些信息的方法,或者可能能够以某种方式将服务器链接到VPN并使用PHP计算出可用空间的大小,尽管我不知道具体如何做到这一点,甚至不知道它是否有效……
发布于 2016-06-10 14:01:14
如果您在Windows计算机上使用IIS服务器,则可以将IIS配置为在LIST命令响应中包含可用磁盘空间。
在IIS管理器中,转到您的FTP站点,然后选择FTP Directory Browsing applet。在“在目录列表中显示以下信息”设置中,检查可用字节。
然后,LIST FTP命令响应将如下所示:
226-Directory has 27,906,826,240 bytes of disk space available.
226 Transfer complete.你可以用WinSCP FTP client来测试这一点,它可以利用这些信息。只要转到Server and Protocol Information dialog的 tab即可。

(我是WinSCP的作者)
其他FTP服务器支持其他方式来检索可用磁盘空间。
https://stackoverflow.com/questions/37737361
复制相似问题