【问题标题】:Is there a way to force a FTP client to issue an ALLO command before transfer?有没有办法强制 FTP 客户端在传输之前发出 ALLO 命令?
【发布时间】:2011-04-18 20:30:09
【问题描述】:

我正在开发一个 FTP 服务器,在 STOR 发生之前我需要文件大小,我看到有一个名为 ALLO 的命令,我想知道是否有办法强制客户端发出该命令命令,因为客户端当然事先知道文件大小。

干杯。

【问题讨论】:

    标签: networking ftp rfc


    【解决方案1】:

    我认为@Rob Adams 的方向是正确的,但我不同意发送552,它表示您正在中止转移;我认为在他们发送ALLO 之前保留请求是一种更有用的方法。通读RFC 959

            This (ALLO) command may be required by some servers to reserve
            sufficient storage to accommodate the new file to be
            transferred...
    

    第 4.2 节列出了回复的有效格式,您可以在第一行显示错误,并在第二行详细说明ALLO 的要求。

    此外,第 4.2.2 节 列出了这条消息...350 Requested file action pending further information.

    如果您的服务器在收到ALLO 之前收到存储请求,它应该抛出一个350 并保持传输直到您获得会话超时、关闭或他们发送ALLO,这似乎是合理的。

    【讨论】:

    • 我到家时会试试的。我希望 FileZilla 同意 350 :D
    • @vtortola,如果我没看错this bug,看起来他们还没有实现ALLO
    【解决方案2】:

    只是一个猜测——您可以为 STOR 返回552 - Exceeded storage allocation (for current directory or dataset).

    【讨论】:

    • hmm... 不走运 :) 响应:命令:STOR eLqEL.jpg 响应:512 超出存储分配(对于当前目录或数据集)。谢谢。错误:严重的文件传输错误
    猜你喜欢
    • 1970-01-01
    • 2015-06-14
    • 1970-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-01
    相关资源
    最近更新 更多