我有一个代码我试图通过PHP FTP连接连接到不同的服务器 我知道我实际连接到服务器。
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
var_dump($login);
当我vardump
$login
时,我得到TRUE
。
当我尝试上传文件时,我收到'错误上传文件' 所以我试着在连接上拉一个文件列表:
$file_list = ftp_nlist($ftp_conn, ".");
var_dump($file_list);
它只返回bool(false)
我知道连接有文件,因为我可以使用相同的凭据通过FileZilla查看它们。
知道可能出错的是什么?服务器设置是否可以允许我从共享服务器使用此PHP脚本?
答案 0 :(得分:3)
public function index() {
$users = $this->users->find('all', array("conditions" => array('name' => '')));
$this->set("users", $users);
}
(ftp_list
和ftp_nlist
)出现问题的最典型原因是PHP默认为活动模式。在99%的情况下,必须切换到被动模式,以使目录列表和传输工作。使用ftp_pasv
function。
ftp_put
请参阅active and passive FTP connection modes上的我的文章。