为什么 ftp_login() 验证失败?

Why is ftp_login() authentication failing?

我正在尝试使用 ftp_login() 但仍然出现错误:

Warning: ftp_login(): Login authentication failed in /path/to/file.php

我 100% 肯定用户名和密码是正确的。使用 WinSCP 或 FileZilla 等 FTP 客户端时登录成功。密码或用户名中没有符号。

代码如下:

$ftp_host = 'host.com'; 
$ftp_user_name =  'user@host.com'; 
$ftp_user_pass = 'password';

$connect = ftp_connect( $ftp_host ) or die( "Couldn't connect to server!!!" );
$login_result = ftp_login( $connect, $ftp_user_name, $ftp_user_pass );

我正在使用 HostGator,我正在尝试将此域的文件传输到也使用 HostGator 的子域。

请帮忙。谢谢!

尝试从您的 $ftp_user_name 字符串中删除 @host.com。

使用这个来查看您的凭据是否正确:

if (ftp_login($connect, $ftp_user_name, $ftp_user_pass)) {
    echo "Connected as $ftp_user_name@$ftp_host\n";
} else {
    echo "Couldn't connect as $ftp_user_name\n";
}

注意,此代码将显示错误。

尝试更改您的 ftp 密码,单击查看 FTP 详细信息并更改您的密码。 不过,与基于 Web 的文件管理器相比,使用合适的 ftp 客户端会更好,而且它们因损坏文件而臭名昭著。