2017-12-14 9 views
0

私はLaravelでSSHを実行しているので、別のサーバーに接続してファイルをダウンロードしています。私は今、そのファイルを正常にダウンロードして、自分のローカルサーバに移動Laravelはコレクティブhttps://laravelcollective.com/docs/5.4/sshLaravel Collective SSHの結果

だから、これを行うための提案方法は、この

$result = \SSH::into('scripts')->get('/srv/somelocation/'.$fileName, $path); 

if($result) { 
    return $path; 
} else { 
    return 401; 
} 

のようなものである使用しています。しかし、$ resultはNullと思われるので、私はいつも401を返す。

SSHから多くの結果を得ることはできません。私も試しました

$result = \SSH::into('scripts')->get('/srv/somelocation/'.$fileName, $path, function($line){ 
    dd($line.PHP_EOL); 
}); 

しかし、それは決して内部の機能にはなりません。

結果がSSHから返される方法はありますか?エラーがあれば正しく処理したいだけです。

おかげ

+2

活用PHPSecLib、NET2クラスを使用しますSSHを使用すると、コンソールに入るとインタラクティブな結果が得られ、Web上にコンソールを構築することもできます。私はphpseclibを使用していて、毎回sshコマンドを実行したり、何かを実行したりすると正確な結果が得られます。私はlaravel 5.3と5.4で使用しています – webDev

答えて

0

のではなく、あなたにtrue/false /エラーを与えること$resultに依存しているファイルが別の方法で正常にダウンロードされた場合、あなたが確認できます。

// download the file 
$result = \SSH::into('scripts')->get('/srv/somelocation/'.$fileName, $path); 

// see if downloaded file exists 
if (file_exists($path)) { 
    return $path; 
} else { 
    return 401; 
} 
関連する問題