이 글은 주로 Laravel에서 로그를 작성할 수 없는 문제에 대한 해결책을 소개합니다. 이 글은 모든 사람이 참고하고 배울 수 있는 자세한 해결책을 제공합니다. 필요한 친구는 아래를 살펴보세요. .
서문
계정 로그인시 500에러가 보고되었고, 에러메세지도 나오지않아 어쩔수 없이 기존 방법을 사용하게 되었고, 지금은 한줄씩 인쇄중입니다. Log::info()
에 도달한 후 정상적으로 표시되지 않으면 문제가 발견되었습니다. Log::info()
后面就无法正常显示了,那么问题就找到了。
导致无法写入日志的问题,是由于代码更新时添加了文件是 root 用户,所以创建日志文件也是 root 权限,导致其它用户的 www 权限无法写入日志文件中。
所以修改 storage/logs/ 的用户权限为 www
chown www:www storage/logs -R
注意:如果用户使用supervisord服务运行队列的话,如果队列里有日志记录,那么运行的用户也需要改成 www 用户。
问题2
同样是日志无法记录问题,这里是本地环境使用 php artisan queue:work --sleep=3 --tries=3
运行。
同样在 job 中写日志,权限也是正确,就是无法记录日志,任务也正常执行。
最后想到重启队列解决此问题,不知道是什么原因导致。如果有知道的同学请告知一声。
重启队列命令
php artisan queue:restart
其它与日志无关的问题
问题1
最近在使用 ZizacoEntrust 这个权限包…
再添加角色的时候… 报了一个错..
BadMethodCallException in Repository.php line 391: This cache store does not support tagging.
应该是这个包里 有个地方用了 laravel 的cache,默认的cache是file
把.env 里的 CACHE_DRIVER
改成 CACHE_DRIVER=array
그러므로 저장소/로그/의 사용자 권한을 www
View [.] not found.
참고:
, 대기열에 로그 기록이 있는 경우 실행 중인 사용자도 www 사용자로 변경해야 합니다.
문제 2같은 문제는 로그를 기록할 수 없다는 것입니다. 여기서는 php artisan queue:work --sleep=을 사용하는 로컬 환경입니다. 3 --tries= 3
실행합니다. 마찬가지로 작업에 로그를 작성하면 권한은 올바르지만 로그를 기록할 수 없으며 작업은 정상적으로 실행됩니다.
php artisan optimize --force php artisan config:cache php artisan route:cache
CACHE_DRIVER
를 CACHE_DRIVER로 변경하세요. =array
🎜🎜🎜문제 2🎜🎜🎜🎜이 오류는 페이지에 나타납니다🎜🎜🎜🎜rrreee🎜솔루션, 최적화, 구성 캐시 지우기, 🎜라우팅🎜cache🎜🎜🎜🎜rrreee🎜🎜🎜 🎜🎜 🎜위 내용은 Laravel 프레임워크에서 로그를 작성할 수 없는 문제에 대한 해결 방법 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!