Pembaruan terkini!
Anda memiliki lebih dari 1 kesalahan dalam kode Anda,
Anda menggunakan FTPS di url yang memerlukan verifikasi SSL, dan kode Anda salah.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
//Dont use try! you shouldnt use
curl_setopt($ch, CURLOPT_FTP_SSL, CURLFTPSSL_TRY);
Mereka harus benar: SSL
tidak mendukung benar sehingga mereka harus seperti mengikuti @dharman memperingatkan dalam jawaban lain.
Tetapi mengubah SSL menjadi kenyataan akan memerlukan pengaturan lain seperti file cacert
dll
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
//and include cacert.pem
curl_setopt($ch, CURLOPT_CAINFO, dirname(__FILE__) . '/cacert.pem');
Unduh file cacert di sini: https://curl.haxx.se/docs/caextract.html sebuah>
2. Url Anda bukan url sebenarnya $ftp_server = 'ftps://'.'server/Voorraadtonen link.csv';
, url ini tidak akan mendapatkan apa pun, tetapi harus mengembalikan kesalahan setidaknya dalam file error_log
, seperti yang Anda katakan semua pelaporan kesalahan diaktifkan
3. Kode Anda akan terlihat seperti ini
$curl = curl_init();
$file = fopen("link.csv", 'w');
curl_setopt($curl, CURLOPT_URL, "ftp://ftp.site.com/link.csv");
//Make sure for correct url
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($curl, CURLOPT_CAINFO, dirname(__FILE__) . '/cacert.pem');
//Make sure for correct url
curl_setopt($curl, CURLOPT_FILE, $file);
curl_setopt($curl, CURLOPT_USERPWD, "$_FTP[username]:$_FTP[password]");
//Make sure for your ftp credentials
curl_setopt($curl, CURLOPT_TIMEOUT, 20); //20 seconds will be enough
curl_exec($curl);
echo curl_errno($ch);
echo curl_error($ch);
curl_close($curl);
fclose($file);
1 hal lagi tajuk kiri tidak diperlukan tetapi jika diperlukan.
curl_setopt($curl, CURLOPT_HEADER, false); //Or
curl_setopt($curl, CURLOPT_HEADER, true);
Sekarang seharusnya berfungsi tanpa masalah apa pun
CATATAN : Kode contoh adalah contoh kerja yang dapat Anda edit sesuai kebutuhan Anda
PEMBARUAN : Setelah modifikasi yang Anda katakan telah Anda lakukan pada kode Anda (Masih tidak ditampilkan kepada kami), akhirnya kami mendapatkan kesalahan. sekali lagi saya meminta Anda untuk menambahkan kode yang dimodifikasi ke dalam pertanyaan Anda.
Error_no 28 kesalahan cURL 28: Waktu koneksi habis
kesalahan cURL 28 terjadi ketika permintaan cURL tidak diselesaikan dalam jangka waktu tertentu.
Hal ini terjadi ketika nilai batas waktu cURL disetel terlalu rendah atau ketika firewall memblokir permintaan cURL.
Kemungkinan lainnya adalah modul keamanan, misalnya modul Apache mod_security.
Untuk memperbaiki cURL error 28 Anda dapat menghubungi penyedia hosting Anda.
Jadi pada dasarnya!
Server Anda memblokir. kredensial Anda tidak cocok dengan kredensial yang diperlukan. SSL diperlukan oleh server, tetapi Anda tidak menyiapkannya. Fungsi Anda berjalan maksimal pada pengaturan Batas Memori Server Anda.
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "ftp.site.com/link.csv");
//make sure your path to file is correct
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_USERPWD, "$_FTP[username]:$_FTP[password]");
//make sure your login credentials correct
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
//Set timeout for connection
curl_exec($curl);
echo curl_errno($ch);
echo curl_error($ch);
//Get errors
curl_close($curl);
//Importand close curl connection.
person
Dlk
schedule
26.01.2020
if(curl_errno($ch)){ throw new Exception(curl_error($ch)); }
- person Dlk   schedule 26.01.2020curl -u user:password 'ftps://mysite/%2fusers/myfolder/myfile/csv' -o ~/folder/link.csv
- person Dlk   schedule 26.01.2020$error_no
? - person Nigel Ren   schedule 26.01.2020