執行 schedule:run
的是 www
使用者,
crontab -e -u www
* * * * * cd /my_project/ && php artisan schedule:run >> /dev/null 2>&1
並且在 logging
中也配置了
'daily' => [
...
'permission' => 0666,
],
建立出來的日誌檔案許可權依然是 644
,導致寫入日誌失敗報錯。
分析具體原因可能是因為 Linux 預設的建立檔案模式設定為 644
,即 umask
的優先順序高於 Laravel 的 logging.php
配置,導致建立檔案許可權錯誤。
CLI 輸入 umask
檢視
umask
0022
Unix 系統對於新建立檔案基準許可權是 666
再減去 umask 的 022
,導致建立檔案的許可權就是 644
,猜測是這樣。
* * * * * umask 000 && cd /my_project/ && php artisan schedule:run >> /dev/null 2>&1
php artisan config:clear
忘了清快取了。
本作品採用《CC 協議》,轉載必須註明作者和本文連結