sftp上傳到遠端伺服器

2022-04-01 19:00:12 字數 894 閱讀 1164

開發遇到乙個需求,需要將通過sftp上傳到遠端伺服器上,之前沒用過這個功能,折騰了我好幾天才搞定,下面記錄下我的處理方法:

$sftp = 'ssh2.sftp://';

//連線sftp

$conn = ssh2_connect('ip','埠');

//登入

ssh2_auth_password(

$conn,"user","password");

$result = ssh2_sftp($conn

);//判斷是否存在目錄hm(特別注意賬號登入進來後預設的檔案路徑是不是根目錄,否則找不到資料夾,也不能建立資料夾,可通過pwd命令檢視當前資料夾路徑)

if (!file_exists($sftp.$result.'/hm/'))

else

if($dir

)else

//遠端伺服器建立乙個檔案

$sftpstream = fopen($sftp.$result.$remotefilename, 'w'); //若報(failed to open stream: operation failed)錯誤,需要將$result改為intval($result)

//獲取本地檔案

$data_to_send = file_get_contents(realpath($localfilename

));//將本地檔案寫入到遠端檔案中

$send = fwrite($sftpstream, $data_to_send

);//關閉檔案流

fclose($sftpstream);

linux下命令列連線sftp

sftp -oport=22 username@ip

本地檔案上傳到遠端伺服器

win7下 用putty好像不太行。用securecrt非常方便。步驟如下 2 輸入rz,點enter 3 會彈出對話方塊,選擇要上傳的檔案 4 上傳,會顯示百分比 速率和時間等資訊。前段時間裝了ubuntu,不再使用win7了.所以想起來要更新下這篇文章.ubuntu下,我喜歡用的工具是termi...

php將上傳的檔案上傳到遠端伺服器

問題場景還原如下 現有乙個上傳頁面,後端控制器用php來處理,但是php在得到上傳來的檔案時,要上傳給另乙個介面 用golang實現的,記為api2 api2原本也是處理簡單的上傳邏輯,但是不知道怎麼用php模擬上傳檔案給api2,如果有同學知道,煩請告知,非常感謝 最終採取了如下辦法 php將頁面...

上傳檔案到sftp伺服器

上傳檔案到sftp伺服器 param remotepath sftp伺服器路徑 param filename sftp伺服器檔名 param closeflag 是否要關閉本次sftp連線 true 關閉,false 不關閉 param filepathflag 是否要建立遠端的指定目錄 true ...