2

PHP を使用してファイルを FTPS サーバーにアップロードしようとしていますが、SSL エラーが頻繁に発生します。試行された 2 つの方法は次のとおりです。

// METHOD 1
$url = 'ftps://username:pwd@ftpserver/filename.txt';
$context = stream_context_create(array('ftp' => array('overwrite' => true)));
$file_put_contents($url, 'FILE CONTENTS', 0, $context);

// METHOD 2
$ftph = ftp_ssl_connect('ftpserver', 21, 10);
ftp_login($ftph, 'username', 'password');
print ftp_pwd($ftph);
ftp_close($ftph);

エラー方法 1:

file_put_contents(ftps://...@ftpserver/filename.txt): ストリームを開けませんでした: 行 X の /php/file/directory/index.php で SSL モードを有効にできません

エラー方法 2:

ftp_login(): 行 X の /php/file/directory/index.php で SSL/TLS ハンドシェイクが失敗しました

PHP マニュアルでは、ftp_ssl_connectPHP が OpenSSL でコンパイルされていない場合は存在しないと述べています。PHP は関数が存在しないことを訴えていません。また、phpinfo からのすべての指標は、OpenSSL が有効になっていることを示しています。FileZilla クライアントはデフォルト ポート (21) で正常に接続し、暗号化: 明示的な FTP over TLS が必要

Ubuntu 12.04 で LAMP を実行しています。

4

0 に答える 0