我們說laravel框架的功能性比較明確,作為全??蚣茉诖a的運行上是比較簡潔的。在對laravel框架安裝完成后,我們可以就其中的一些操作為大家展現(xiàn)。本篇要帶來的是在laravel中的調度,分為兩種不同目錄的情況討論,同時把可能在調度中會出現(xiàn)的錯誤情況,單獨為大家呈現(xiàn)并解決。
1、不在laravel根目錄(命令行操作前的地址)
php /www/wwwroot/laravel6/artisan schedule:run
/www/wwwroot/laravel/artisan 解釋
/www/wwwroot/laravel6/ 為指定到laravel根目錄的路徑
artisan 為laravel自帶的命令行工具
2、在laravel目錄下(命令行操作前的地址)
php artisan schedule:run
因為命令此時本身就已將和artisan同目錄,所以不需要再去指定artisan位置(指定也可以),直接運行上方命令即可。
3、laravel調度任務沒有執(zhí)行的問題
調度任務命令如下:
$schedule->command('emails:send')->withoutOverlapping();
說明:
withoutOverlapping 這個命令的作用就是當一個進程還沒跑完,不會開啟新的進程。其機制就是開啟明亮的時候會在項目的storage/framework/cache目錄中添加一個文件,如果進程卡住或者未進行完成的時候,這個文件就會陷入死循環(huán),一直執(zhí)行該進程,等到進程執(zhí)行完畢之后,會刪除相對應的緩存文件,開始下一個進程。
簡單理解就是加上withoutOverlapping 會引起阻塞,只有完成的任務才會繼續(xù)下面的進程。
內容擴展:
解決Laravel 任務調度不執(zhí)行問題
如果你按照官方手冊上的配置:
* * * * * php /path/to/artisan schedule:run 1>> /dev/null 2>1
發(fā)現(xiàn)任務沒有按照預期的執(zhí)行,可能是你環(huán)境變量問題,
按照下面的修改你的Cron任務配置即可;
* * * * * cd /path/to /usr/local/bin/php artisan schedule:run >> /dev/null 2>1
其中 /usr/local/bin/php 是你PHP的絕對路徑。
到此這篇關于php中l(wèi)aravel調度執(zhí)行錯誤解決方法的文章就介紹到這了,更多相關php之laravel調度執(zhí)行及出錯解決內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!