Laravel的默认错误日志文件存储在项目根目录下的storage/logs文件夹中,文件名为laravel.log(可通过.env文件中的LOG_FILE参数自定义路径)。例如,若项目路径为/var/www/my-laravel-app,则日志文件路径为/var/www/my-laravel-app/storage/logs/laravel.log。
tail -f命令实时监控日志文件的新增内容(按Ctrl+C退出),适用于快速定位正在发生的错误。tail -f /var/www/my-laravel-app/storage/logs/laravel.log
tail -n命令查看日志文件的最后N行(如最后100行),适用于快速查看近期错误摘要。tail -n 100 /var/www/my-laravel-app/storage/logs/laravel.log
less命令分页查看日志文件(支持上下箭头键滚动、/关键词搜索),适用于详细分析日志内容。less /var/www/my-laravel-app/storage/logs/laravel.log
grep命令过滤日志中的特定关键字(如error、exception),适用于快速定位特定类型的错误。grep 'error' /var/www/my-laravel-app/storage/logs/laravel.log
若遇到“Permission denied”错误,需确保当前用户对storage/logs目录有读权限。通常,Laravel项目需由Web服务器用户(如www-data、apache或nginx)拥有所有权。可使用以下命令修复权限:
sudo chown -R www-data:www-data /var/www/my-laravel-app/storage/logs # 替换www-data为你的Web服务器用户
sudo chmod -R 755 /var/www/my-laravel-app/storage/logs
若需调整日志记录的详细程度,可修改.env文件中的LOG_LEVEL参数。例如:
LOG_LEVEL=debug:记录所有级别的日志(包括调试信息,适合开发环境);LOG_LEVEL=error:仅记录错误及以上级别的日志(适合生产环境,减少日志量)。为避免日志文件过大,Laravel支持日志轮转(自动分割日志文件)。可在config/logging.php中配置daily通道,设置日志保留天数(如30天):
'daily' => [
'driver' => 'daily',
'path' => storage_path('logs/laravel.log'),
'level' => env('LOG_LEVEL', 'debug'),
'days' => 30, // 保留最近30天的日志
],
通过以上方法,你可以在CentOS系统上高效查看和管理Laravel的错误日志,快速定位并解决应用问题。