Как переместить файл из локальной папки sftp в Laraver с файловой системой? - PullRequest
0 голосов
/ 06 декабря 2018

Я хочу переместить файл с моего локального сервера на другой, используя sftp, вот мой параметр sftp в config / filesystem.php

'sftp' => [
        'driver' => 'sftp',
        'host' => '192.xxx.0.xxx',
        'port' => 22,
        'username' => 'xxx',
        'password' => 'xxx',
        'root' => '/',
        'timeout' => 10,
    ],

, а вот мой код в контроллере

 $file_local = public_path().'/documents/1.pdf';
 $file_sftp = Storage::disk('sftp')->put('1.pdf', $file_local);
 $move = File::move($file_local, $file_ftp);

Я получил эту ошибку enter image description here

но в папке sftp файл существует, но поврежден, пожалуйста, нужна ваша помощь enter image description here

1 Ответ

0 голосов
/ 06 декабря 2018

777 разрешений!это ключевой вход для зла!Я не буду настраивать свои приложения таким образом!Сначала я бы проверил, существует ли файл в папке хранилища (файл, который вы переименовываете).Мое второе предположение - файл принадлежит совершенно другому пользователю?Обычно весь проект должен находиться под одним владельцем user.group!Это может быть apache.groupName в вашем случае, но вы должны перепроверить.Так что я бы сделал

ls -la  // in project root directory and grab the ownerUser and ownerGroup names 
// then I ld make sure everything is owned by them - back up your project first before changing ownership!
sudo chown  -R ownerUser.ownerGroup *   // -R for recursive

Если нет, я бы сохранил его в другом месте, кроме папки хранения.Надеюсь, это поможет вам

...