1
我試圖使用Curl從FTP服務器下載文件。我可以將網址粘貼到我的瀏覽器中,並且可以正常下載。問題是,在Curl和PHP中,我相信FTP服務器正在做重定向,Curl不會遵循。我收到錯誤消息「服務器拒絕您更改爲給定的目錄」。使用Curl和PHP從FTP下載文件使用PHP
編輯:我在代碼中%2f並刪除它。這是來自先前的測試。
我的代碼是:
$curl = curl_init();
$file = fopen("temp.zip", 'w');
curl_setopt($curl, CURLOPT_URL, "ftp://idx.living.net/idx_fl_ftp_down/idx_naples_dn/naples_data.zip");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_FILE, $file);
curl_setopt($curl, CURLOPT_FTPSSLAUTH, CURLFTPAUTH_SSL);
curl_setopt($curl, CURLOPT_USERPWD, "myusername:mypassword");
curl_exec($curl);
echo curl_error($curl);
任何方式強迫捲曲表現在下載文件時,瀏覽器的方式做?
從來沒有聽說過FTP服務器可以做重定向,這通常是HTTP協議的功能,而不是FTP協議。 – hakre
我不認爲FTP協議有HTTP重定向響應。這可能不是你的問題。嘗試使用wireshark竊聽ftp連接以查看到底發生了什麼。 –
路徑中的'/%2fidx_fl_ftp_down /'部分是否有效?不應該只是'/ idx_fl_ftp_down /'? '%2f'是'/'的url編碼。我認爲它可能試圖變成無效/不存在的目錄。 – drew010