問題:
我有一個Laravel 5.4工匠任務,我需要通過cron運行 - 但它沒有被任憑指揮和調度程序完成的(顯然)正確設置。Laravel 5通過在AWS EC2的cron時間表 - 命令沒有運行
這是一個Laravel,PHP,Apache,Linux或crontab的問題?什麼是最好的診斷方法?
背景
在默認(亞馬遜AMI)EC2實例,技術人員命令被正確定義,並且當經由被稱爲從項目目錄(它是/var/www/html/myproject/
)完全運行:
php artisan mycommand:option1
我已經把它加入到時間表app/Console/Kernel.php
,看起來像這樣:
protected function schedule(Schedule $schedule)
{
Log::info('schedule:run');
$schedule ->command('mycommand:option1')
->dailyAt('07:00')
->emailOutputTo('[email protected]');
$schedule ->command('mycommand:option2')
->dailyAt('07:15')
->emailOutputTo('[email protected]');
}
新增通過sudo crontab -u apache -e
爲apache
以下cron命令:
* * * * * php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1
,以確保它不是一個權限問題我還增加了以下用戶相同的命令:通過crontab -e
root
ec2-user
通過sudo crontab -e
系統輸出
從sudo tail -f /var/log/cron
:
Apr 11 19:17:01 ip-10-0-0-42 CROND[17968]: (root) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:17:01 ip-10-0-0-42 CROND[17969]: (ec2-user) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:17:01 ip-10-0-0-42 CROND[17970]: (apache) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:18:01 ip-10-0-0-42 CROND[17980]: (ec2-user) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:18:01 ip-10-0-0-42 CROND[17981]: (apache) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:18:01 ip-10-0-0-42 CROND[17982]: (root) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:19:01 ip-10-0-0-42 CROND[17992]: (root) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:19:01 ip-10-0-0-42 CROND[17993]: (ec2-user) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
Apr 11 19:19:01 ip-10-0-0-42 CROND[17994]: (apache) CMD (php /var/www/html/myproject/artisan schedule:run >> /dev/null 2>&1)
沒有出現在以下任一:
sudo tail -f /var/www/html/myproject/storage/log/laravel.log
或
sudo tail -f /var/www/html/myproject/storage/log/laravel-2017-04-11.log
附加信息
內核權限:
drwxr-sr-x 2 apache apache 4096 Feb 24 00:24 Commands
-rw-r--r-- 1 apache apache 1111 Feb 24 00:24 Kernel.php
資源檢查:
- https://askubuntu.com/q/23009
- https://github.com/laravel/framework/issues/13462
- https://stackoverflow.com/a/30664353/3092596
- https://laracasts.com/discuss/channels/servers/how-to-perform-php-artisan-schedulerun-on-an-ubuntu-server-with-laravel-53-for-cron-jobs?page=1
其他信息:
- 運行Laravel 5.4.16由
php artisan --version
- 運行PHP 7.1確定。3,通過
php -v