2017-01-26 10 views
1

からキャッシュをクリアしたときに呼び出す私はこのGit repoLaravel「sudoを:いいえttyの」職人のエラー::ワニス

すべてがうまく働い続きます。

私はphp artisan varnish:flushをSSHから発行することができます。

が、私はスクリプトからキャッシュをフラッシュしようとしたとき

sudoのように私はエラーを取得しました:なしのtty存在していないaskpassパッケージプログラムは、これは私がroutes.phpの中で

を追加する方法です

を指定

Route::get('/flush', function() { 
    Artisan::call('varnish:flush'); 
}); 

私も

Route::get('/flush', function() { 
    (new Spatie\Varnish\Varnish())->flush(); 
}); 
を試してみました0

完全なエラーの外観です。

ProcessFailedException in Varnish.php line 64: 
The command "sudo varnishadm -S /etc/varnish/secret -T 127.0.0.1:6082 'ban req.http.host ~ (^www.host.com$)'" failed. 

Exit Code: 1(General error) 

Working directory: /home/admin/web/host.com/public_html 

Output: 
================ 


Error Output: 
================ 
sudo: no tty present and no askpass program specified 

私はVesta CP Over VPSを使用しています。

私は、このエラーを解決するソリューションを探す。..

答えて

1

sudoコマンドを使用して、読み取り、書き込み、それが失敗した場合、エラープリントのフォルダ/dev/ttyを開きます。

マシンを再起動するだけで、フォルダを削除してもそのフォルダを元に戻すことができます。起動時に/ devにあるすべてのデバイスが再作成されます。

また、許可が正しいことを確認してください。

chmod 666 /dev/tty

関連する問題