Laravel中log无法写入问题的解决
前言
账号登录报500错误,也没有返回错误信息,没办法只能使用原始方法,到现在一行一行打印。到Log::info()后面就无法正常显示了,那么问题就找到了。
导致无法写入日志的问题,是由于代码更新时添加了文件是root用户,所以创建日志文件也是root权限,导致其它用户的www权限无法写入日志文件中。
所以修改storage/logs/的用户权限为www
chownwww:wwwstorage/logs-R
注意:如果用户使用supervisord服务运行队列的话,如果队列里有日志记录,那么运行的用户也需要改成www用户。
问题2
同样是日志无法记录问题,这里是本地环境使用phpartisanqueue:work--sleep=3--tries=3运行。
同样在job中写日志,权限也是正确,就是无法记录日志,任务也正常执行。
最后想到重启队列解决此问题,不知道是什么原因导致。如果有知道的同学请告知一声。
重启队列命令
phpartisanqueue:restart
其它与日志无关的问题
问题1
最近在使用Zizaco\Entrust这个权限包…
再添加角色的时候…报了一个错..
BadMethodCallExceptioninRepository.phpline391: Thiscachestoredoesnotsupporttagging.
应该是这个包里有个地方用了laravel的cache,默认的cache是file
把.env里的CACHE_DRIVER改成CACHE_DRIVER=array
问题2
页面出现此错误
View[.]notfound.
解决办法,优化,清除配置缓存,路由缓存
phpartisanoptimize--force phpartisanconfig:cache phpartisanroute:cache
总结
以上就是这文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对毛票票的支持。