Laravel のバックグラウンドでスクリプトを処理したい。
私のコード:
File::findOrFail($id, ['id']);
try {
$process = new Process('php ../artisan api:get-products ' . $id);
$process->start();
} catch (\Exception $e) {
$log = new Logger('API');
$log->pushHandler(new StreamHandler(storage_path('logs') . '/api.log'));
$log->error('Error', ['error' => $e->getMessage()]);
return back()->withErrors('Ошибка при постановки скрипта в фон');
}
\Flash::success('Wait data');
return back();
Laravel Homestead VM では問題なく動作します。しかし、本番サーバーのバックグラウンド スクリプトでは機能しません。メソッドのみで動作しrun()
ます。