1

我正在使用 Laravel,我想通过 FTP 将图像存储到另一台服务器。我不确定我的连接是否正确。

配置是:

'ftp' => [
    'driver' => 'ftp',
    'host' => '11.11.11.11',
    'port' => 22,
    'username' => 'username',
    'password' => 'password',
    'root' => '/var/www'
],

为了测试它,我创建了一个带有句柄的工匠命令:

public function handle()
{

    $ftp = Storage::disk('ftp');
    $ftp->makeDirectory('test');

    dd($ftp);
}

当我执行这个命令时,什么也没有发生。就像我进入了一个无限循环。

如何检查我是否连接到 FTP 服务器?我测试了凭据,我能够连接 FileZilla。

4

1 回答 1

2

端口 22 用于 SSH/SFTP,而不是 FTP。我猜你在 FileZilla 中使用 SFTP。当您尝试使用 FTP 协议连接到 Laravel 中的 SFTP 端口时。

如果是这种情况,请在 Laravel 中使用 SFTP:

'sftp' => [
    'driver' => 'sftp',
    'host' => '11.11.11.11',
    'username' => 'username',
    'password' => 'password',
    'root' => '/var/www'
],

(无需指定端口 22,因为这是 SFTP 默认的)

于 2020-12-09T14:34:00.200 回答