1
我在遠程主機上有一個網站。 我想通過ftp將php頁面上傳到另一個遠程服務器。PHP - ftp_put未能打開流?
我想上傳到服務器具有這些目錄(所有有權限777):
/
/public_html
/public_html/files
讓說,例如這些是FTP的詳細信息:
host: example.com
user: user
pass: pass
port: 21
可以請人幫忙我明白爲什麼這個代碼不工作:
$file = 'C:\Users\[my username]\Desktop\somefile.txt';
$remote_file = '/public_html/files/file.txt';
// set up basic connection
$conn_id = ftp_connect("example.com",21);
// login with username and password
$login_result = ftp_login($conn_id, "user", "pass");
echo $login_result;
// upload a file
if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
echo "successfully uploaded $file\n";
} else {
echo "There was a problem while uploading $file\n";
}
// close the connection
ftp_close($conn_id);
當我運行它我得到以下消息e:
Warning: ftp_put(C:\Users\User\Desktop\somefile.txt) [function.ftp-put]: failed to open stream: No such file or directory in /home/user/public_html/page.php on line 11
任何幫助真的很感謝ive研究像瘋了似的,一直在努力的年齡。
當您使用ftp_chdir()更改到'/ public_html/files'目錄並使用$ remote_file ='file.txt'時會發生什麼。它可以讓你改變目錄嗎?我對你的錯誤信息的解釋是,你上傳文件的服務器上不存在「/ home/user/public_html/files /」目錄。 – Evan
查看[手冊](http://php.net/manual/en/function.ftp-put.php)中「Kev」左邊的評論,它也值得一看。 – Evan
我做了你所說的,改成'/ public_html/files'沒有錯誤。雖然上傳仍然失敗,同樣的錯誤信息,我的猜測(可能是你的)是它必須是不存在的本地文件,但它確實:/? – user2625752