我正在使用 ftp_get 从另一个 ftp 服务器获取文件。
我的代码在我的本地 WAMP 服务器上完美运行,但是当我将它应用于我的实际网络托管时,连接失败。
$conn = ftp_connect('ftp.server.com') or die('Could not connect');
ftp_login($conn,'myusername','mypassword');
$local_file = 'new/two.txt';
$remote_file = 'games/minecraft/craftbukkit/plugins/VisitCounter/config.yml';
$get = ftp_get($conn,$local_file,$remote_file,FTP_ASCII);
if ($get){
echo 'Connection Successful';
} else{
echo 'Connection failure';
}
exec($get);
ftp_close($conn);
我认为必须在我的 Web 服务器上禁用建立 ftp 连接所需的某些内容。
你们中的任何人都可以提供帮助吗?
谢谢,
贾里德
最佳答案
您的服务器不是处于被动模式,您只需要使用 php 函数打开服务器的被动模式:-
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// turn passive mode on
$ps = ftp_pasv($conn_id, true);
希望它会起作用。
关于php - ftp_get 适用于本地主机,但不适用于生产服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14663743/