我在 PHP 脚本中遇到了奇怪的 FTP 故障。我只是使用命令行 FTP 重新创建了失败,所以我认为我可以从我的查询中消除 PHP。
在 Ubuntu 10.10 中使用命令行 FTP,我可以连接到我的 FTP 服务器、登录、列出目录等。但是,当我尝试使用“put”将文件从本地计算机传输到 FTP 服务器时,我得到一个“553无法创建文件”错误。我在主动和被动模式下遇到同样的错误。传输设置为二进制。
当我在同一台机器上运行 FileZilla 并使用相同的凭据连接到相同的 FTP 服务器,并尝试将相同的文件传输到相同的目标目录时,传输工作正常,默认为二进制和被动模式后。
FWIW,使用相同细节的 PHP 脚本(这是一个简单的 ftp_connect、ftp_login 和 ftp_put)因“非法 PORT 命令”而失败,尽管我怀疑这只是 PHP 对我从命令行 FTP 得到的相同错误的解释。同样,此错误发生在主动和被动 FTP 模式中。