讨论数量:
其他地方你指的应该是php-fpm,你的计划任务使用root用户,当root用户需要写入新日志时,没有文件时,就由root创建,此时你的web程序就没有写入权限。解决办法,是指定crontab的执行用户,这个自行搜索答案
usage: crontab [-u user] file
crontab [ -u user ] [ -i ] { -e | -l | -r }
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
你知道怎么办了吧
可以在生成日志文件的时候把权限改成777
把这段文字加在 bootstrap/app.php里面
$app->configureMonologUsing(function (Monolog\Logger $monolog) {
$filename = storage_path('logs/cli/laravel.log');
// The maximal amount of files to keep (0 means unlimited)
$maxFiles = config('app.log_max_files', 30);
$levelString = config('app.log_level', 'debug');
$levels = [
'debug' => \Monolog\Logger::DEBUG,
'info' => \Monolog\Logger::INFO,
'notice' => \Monolog\Logger::NOTICE,
'warning' => \Monolog\Logger::WARNING,
'error' => \Monolog\Logger::ERROR,
'critical' => \Monolog\Logger::CRITICAL,
'alert' => \Monolog\Logger::ALERT,
'emergency' => \Monolog\Logger::EMERGENCY,
];
$level = \Monolog\Logger::INFO;
if (isset($levels[$levelString])) {
$level = $levels[$levelString];
}
// LineFormatter
$lineFormatter = new Monolog\Formatter\LineFormatter(null, null, true, true
);
// default file permission.
$permission = 0777;
$rotatingFileHandler = new Monolog\Handler\RotatingFileHandler($filename, $maxFiles, $level, true, $permission);
$rotatingFileHandler->setFormatter($lineFormatter);
$monolog->pushHandler($rotatingFileHandler);
});
推荐文章: