For those of you that see this for the first time and might be discouraged from having to compile PHP, please take a look at this page: http://www.deciacco.com/blog/archives/124
ftp_ssl_connect
(PHP 4 >= 4.3.0, PHP 5)
ftp_ssl_connect — Устанавливает соединение с FTP сервером через SSL
Описание
ftp_ssl_connect() устанавливает соединение с FTP сервером, заданным аргументом host , через SSL.
Замечание: Почему эта функция может быть не определена
Функция ftp_ssl_connect() доступна только если PHP был собран с поддержкой OpenSSL. Под Windows, вам придется собрать PHP самостоятельно для включения поддержки OpenSSL.
Список параметров
- host
-
Имя хоста или IP адрес, без слэшей или ftp://
- port
-
Задает порт, на котором устанавливается соединение. Если равен нулю или опущен, по умолчанию используется стандартный для протокола FTP порт 21
- timeout
-
Задает таймаут для всех операций с этим соединением. По умолчанию таймаут устанавливается в 90 секунд. Получить и установить значение таймаута можно также с помощью функций ftp_get_option() и ftp_set_option()
Возвращаемые значения
Возвращает дескриптор соединения, или FALSE при возникновении ошибки.
Примеры
Пример #1 Пример использования функции ftp_ssl_connect()
<?php
// установка соединения
$conn_id = ftp_ssl_connect($ftp_server);
// проверка имени пользователя и пароля
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
echo ftp_pwd($conn_id); // /
// закрытие соединения
ftp_close($conn_id);
?>
ftp_ssl_connect
16-Oct-2007 10:00
09-Feb-2005 07:24
I wasted a lot of time trying to get FTP over SSL/TLS working in PHP on Windows OS (with precompiled SSL PHP-packages etc.). However, it never worked for me.
I'm happy I found a nice solution now:
using "MovieIt Freely", a commandline FTP-Client, freeware at http://www.standardnetworks.com.
A nice tool that worked on all SSL/TLS-enabled FTP-Server for me.
Its easy to get it to interact with PHP:
a) Create a temporary batch-txt-file and therein write all your commands to be performed
b) then launch the program with exec() or backticks, let MovieIt read the batch-txt-file and forward/write down the log/results in a temporary results-txt-file
c) Finally read the log/results-txt-file
Check the manual for details.
Hope it helps. Cheers!
15-Jul-2004 06:08
Since ftp_ssl_connect() requires SSL compiled into PHP, Windows users will need to compile their own PHP this way or download it from another source. Here's one such (and trusted) source:
* http://ftp.emini.dk/pub/php/win32/openssl/
21-Jan-2004 06:56
Just remember: SSL FTP != SFTP
Differences: an SSL FTP connects on port 990, and you need an ftp server which will support this (seems like none in the SuSE linux distribution do). Even if you get this function to work, and it connects ok to a normal FTP server on port 21, data WILL NOT BE ENCRYPTED. If you don't believe me, go sniff it yourself!
