phpseclib NET_SFTP_STATUS_NO_SUCH_FILE : File not found when file DOES exist

标签 php sftp phpseclib

我正在使用 phpseclib 将文件上传到远程服务器。以前,我的脚本运行良好,但几周前它似乎已停止工作。我得到一个

NET_SFTP_STATUS_NO_SUCH_FILE: File not found from $sftp->put.



问题是要上传到服务器的文件确实存在。另外,该代码以前可以正常工作。

由于该脚本之前可以运行,似乎目标服务器的某些设置可能已更改。

有没有人有解决此问题的任何想法或建议?

最佳答案

我昨天才遇到这个问题。就我而言,我以错误的顺序传递本地/远程文件名,例如

if($sftp->put($filename,$filenameRemote,NET_SFTP_LOCAL_FILE))

但在将其更改为
($sftp->put($filenameRemote, $filename, NET_SFTP_LOCAL_FILE)) 

它工作正常。

由于这在过去对您有用,因此我肯定会查看它们所在的本地/远程文件或目录的权限。此外,如果您还没有,请启用调试以获取更多详细信息
define('NET_SFTP_LOGGING', NET_SFTP_LOG_COMPLEX)

关于phpseclib NET_SFTP_STATUS_NO_SUCH_FILE : File not found when file DOES exist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13827278/

相关文章:

php - Laravel API : The POST method is not supported for this route. 支持的方法 : GET, HEAD

c# - 访问 SFTP 站点 : The requested name is valid, 时出现异常,但未找到请求类型的数据

c - 性能 libssh2 sftp 上传多个文件

bash - 使用管道安全地传输 FTP 文件

phpseclib loadKey 适用于 mac,不适用于 CentOS

php - RSA:在Python和PHP中从n和e生成公钥给我两个不同的公钥

php - 如何使用phpseclib通过SFTP检查上传的文件是否存在

javascript - 如何从 img 标签上传图片?

php - 变量数量与参数数量不匹配——是的,它们匹配

php - Datepicker 日期格式插入和0000-00-00