2015-09-22 2 views
0

Я пытаюсь отправить почту в мой gmail каждую минуту.Команда: php artisan schedule: run Не работает для второго?

Мой кронтаб: From here

* * * * * /usr/local/bin/php path/artisan scheduled:run >> /dev/null 2>&1 

Тогда я поставил функцию Запланировать в /App/Console/Kernel.php:

protected function schedule(Schedule $schedule) 
{ 
    $schedule->command('inspire') 
      ->hourly();   
    $schedule->call(function() { 
     $email = "My_Gmail_Receive";    
     $msg = 'example_view'; 
     $data = []; 
     Mail::send($msg, $data, function($message) use($email) 
     { 
      $message->from('My_Gmail_Send', 'Hello'); 

      $message->to($email)->subject('Please checkout!'); 
     }); 
    })->everyMinute(); 
} 

Finnaly, я работает: $ php artisan schedule:run

Затем «My_Gmail_Receive "получите соответствующее сообщение. Но он не работает автоматически everyMinute(). (Он просто работает 1 раз, когда я запускаю $ php artisan schedule:run)

Что случилось со мной?

ответ

2

Ваш crontab имеет орфографическую ошибку: это schedule:run, а не scheduled:run. Я также предполагаю, что path/artisan на самом деле не на вашем кронтабе, а на самом деле путь к ремесленнику. :)

+0

Мой crontab: * * * * */usr/local/bin/php/Applications/XAMPP/xamppfiles/htdocs/test/artisan schedule: run 1 >>/dev/null 2> & 1 –

+0

О, так ты на маке? OSX не использует crontab, как делает linux. Кроме того, у вас есть лишний «1» в этой строке. Я бы посмотрел на другое решение. –

+0

Подождите. Это работает :). Это моя ошибка: расписание: запустить и запланировать: запустить. Я проведу его с помощью общедоступного сервера. Огромное спасибо. Это делает меня чем 2 часа, чтобы исправить. –

Смежные вопросы