同步文件到远程服务器
导读:/** * @param string $source 当前文件路径 如:/admin/images/2023/03/06/admin.png * @param string $target 远程文件夹路径 如:/home/web/pu...
/**
* @param string $source 当前文件路径 如:/admin/images/2023/03/06/admin.png
* @param string $target 远程文件夹路径 如:/home/web/public
* @param string $host 远程服务器主机
* @param string $port 远程服务器端口号
* @param string $username 远程服务器用户名
* @param string $password 远程服务器密码
* @return bool|string
*/
protected function ssh2ScpSend($source, $target, $host = '127.0.0.1', $port = '22', $username = 'username', $password = 'password')
{
try {
$source = ltrim($source, DIRECTORY_SEPARATOR);
$target = rtrim($target, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR;
//建立ssh2连接
$connection = ssh2_connect($host, $port);
//验证ssh2密码
ssh2_auth_password($connection, $username, $password);
$sftp = ssh2_sftp($connection);
ssh2_sftp_mkdir($sftp, $target . dirname($source), 0777);
$result = ssh2_scp_send($connection, realpath($source), $target . $source, 0777);
}
catch (\Exception $e) {
$result = $e->
getMessage();
}
return $result;
}
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 同步文件到远程服务器
本文地址: https://pptw.com/jishu/3364.html