Я пытаюсь настроить FTP SSL-соединение в PHP. Я использовал ftp_connect()
отлично и отлично работает. Как только я пытаюсь использовать ftp_ssl_connect()
, я получаю эту ошибку:
Неустранимая ошибка: вызов неопределенной функции ftp_ssl_connect ()
У меня есть расширение openssl, включенное в расширениях PHP. Я не уверен, что еще нужно делать для поиска в google. Нет ничего, что я могу найти, чтобы сделать этот вызов функции. Кто-нибудь знает, что мне не хватает или чтобы проверить, нужно ли еще что-то установить на моем сервере?
Вот мой код php, который я использую:
$conn_id = ftp_ssl_connect($ftp_server); $ftp_user_name = "username"; $ftp_user_pass = "password"; $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); ftp_pasv($conn_id, true); if ((!$conn_id) || (!$login_result)) { echo "FTP connection has failed!"; echo "Attempted to connect to $ftp_server for user $ftp_user_name"; exit; } else { echo "Connected to $ftp_server, for user $ftp_user_name"; }
Очевидно, что он не проходит мимо первой строки из-за того, что ftp_ssl_connect()
является неопределенной функцией.
Из документации PHP :
Примечание. Эта функция может не существовать. Ftp_ssl_connect () доступен только в том случае, если как модуль ftp, так и поддержка OpenSSL встроены в php статически, это означает, что в Windows эта функция будет не определена в официальных сборках PHP. Чтобы сделать эту функцию доступной в Windows, вы должны скомпилировать свои собственные двоичные файлы PHP.
Примечание: ftp_ssl_connect () не предназначен для использования с sFTP . Чтобы использовать sFTP с PHP, см. Ssh2_sftp () .
(BTW: я не использую Windows, но я не могу получить доступ к ftp_ssl_connect()
)