В настоящее время я работаю над проектом, который включает в себя подключение к клиентскому FTPS-серверу и загрузку файла, который они автоматически обновляют с помощью необходимых нам данных. Я хочу получить доступ к этому серверу через PHP, чтобы я мог его автоматизировать.
У меня проблема в том, что FTP_SSL_CONNECT НЕ будет работать из-за того, что клиент использует неявную безопасность TLS на сервере.
У кого-нибудь есть опыт работы с этим соединением?
Спасибо, Т
$username = 'username here';
$password = 'password here';
$get_file = "file to get here";
//set ftps url
$url = "ftps urls here";
$local_prefix = 'local folder prefix here';
$location = "ftps://" . $username . ":" . $password . "@" . $url;
$port = "any port number here";
//********************************************************************//
//initialize cURL and begin
print("Initializing cURl and saving file from scure ftp.");
$curl = curl_init();
//create or open a file for writing
$file = fopen("$local_prefix$get_file", "w");
//set cURL options *note* these must occur in order for implicit ftp to work correctly
curl_setopt($curl, CURLOPT_URL, "$location$get_file");
curl_setopt($curl, CURLOPT_PORT, "$port");
curl_setopt($curl, CURLOPT_USERPWD, "$username:$password");
curl_setopt($curl, CURLOPT_FILE, $file);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($curl, CURLOPT_FTP_SSL, CURLFTPSSL_TRY);
curl_exec($curl) or die("did not save file");
curl_close ($curl);
fclose($file);
exec
, потоки, сокеты,file_get_contents
(это вообще работает с FTP?) или что-то еще? - person Kryten   schedule 20.06.2014curl_exec($curl) or die(curl_error($curl))
даст вам гораздо лучшую диагностику, чем довольно бесполезная строка не работает. - person Marc B   schedule 20.06.2014