php 如何通过连接sftp并下载sftp服务器指定目录下的所有文件到本地?

php 如何通过连接sftp并下载sftp服务器指定目录下的所有文件到本地?,第1张

一、下载并安装FTP客户端,例如我现在用的Xftp6。

xftp6中文版是一款高效实用的MS windows 平台专用SFTP、FTP 文件传输工具。xftp6中文版功能强劲,便捷好用,支持MS windows 用户安全地在 UNIX/Linux 和 Windows PC 之间进行文件传输。

二、点击文件->新建

三、在弹出的对话框中输入

四、文件->打开创建的会话, 选择会话,点连接

五、在进入的界面,可以看到服务器文件,找到指定目录然后右键->传输就可以了。

写在最后:

SFTP是SSH File Transfer Protocol的缩写,安全文件传送协议。SFTP与FTP有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。

if ($act == 'download_company_file') {

if (!isset($_REQUEST['name']) || empty($_REQUEST['name']) ||

!isset($_REQUEST['path']) || empty($_REQUEST['path'])) {

exit

}

$name = $_REQUEST['name']

$path = $_REQUEST['path']

$dir = "/web/pub/document/company{$path}{$name}"

if (!is_file($dir)) {

exit

}

//打开文件

$file = fopen($dir, 'r')

$size = filesize($dir)

  //输入文件标签

  header("Content-type: application/octet-stream")

  header("Accept-Ranges: bytes")

  header("Accept-Length: {$size}")

  header("Content-Disposition: attachment filename={$name}")

  //输出文件内容

  echo fread($file, $size)

  fclose($size)

  exit

} function download_company_file(path, name){

var form = '<form method="post" action="documentHandle.do" target="" style="display:none">' + 

'<input type="hidden" name="act" value="download_company_file" />'+

'<input type="hidden" name="path" value="'+path+'" />'+

'<input type="hidden" name="name" value="'+name+'" />'+

'</form>'

$(form).appendTo('body').submit()

}


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/193439.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-31
下一篇2023-03-31

发表评论

登录后才能评论

评论列表(0条)

    保存