加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 使用ssh2_scp_send()发送的文件在远程服务器上不完整

发布时间:2020-12-13 16:03:02 所属栏目:PHP教程 来源:网络整理
导读:我使用 PHP和SSH2将文件传输到远程服务器. 我用这个: $connection = ssh2_connect('shell.example.com',22);ssh2_auth_password($connection,'username','password');ssh2_scp_send($connection,'/local/filename','/remote/filename',0644); 但有时远程服
我使用 PHP和SSH2将文件传输到远程服务器.

我用这个:

$connection = ssh2_connect('shell.example.com',22);
ssh2_auth_password($connection,'username','password');
ssh2_scp_send($connection,'/local/filename','/remote/filename',0644);

但有时远程服务器上的文件不完整.我假设SSH2不传输EOF或其他任何东西.

你有什么想法或解决方案吗?

问题是您没有关闭SSH会话.因此,内部缓冲区不会被刷新,文件也不会完全写入磁盘.

这是一个解决方法 – 只需关闭会话:

ssh2_exec($connection,'exit');

这将导致刷新所有缓冲区并完全传输您的文件.

希望,这有帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读