laravel项目日志文件迁移

laravel项目的日志文件迁移

一个使用laravel的项目,因为使用量较大,服务器上的日志文件很大,且很占内存,所以决定将日志文件的存储位置迁移到其他的文件夹。

首先我看了laravel的文档后,去查看了config文件夹里的logging.php文件。
在这里插入图片描述如图所示,我在上方的渠道里看到渠道只有daily这个,于是我就修改了daily的path选项,改成了我自定义的一个路径测试了下,发现日志确实存储到新的目录下了。但还发现了个新问题,就是新目录下只存储了项目的错误日志,而没有真正大量占内存的数据库的查询日志,为此我又去查询了下资料,发现logging这边的配置只处理错误日志,而没有mysql的查询日志。
mysql的查询日志的位置在app/providers文件夹下的AppServiceProviders.php中,在此处监听数据库并添加数据库的查询日志。我把此处的日志存放路径修改后,数据库查询日志也迁移到了新的目录下。

但是,在修改提交到服务器上后,报了这个错误:
在这里插入图片描述
这种情况是open_basedir限制了PHP可以操作的文件目录,可以在配置文件中修改open_basedir信息,加上想要操作的路径或者直接注释掉这行。

查了下资料,说是open_basedir可以在 php.ini 里配置;也可以在 Apache 配置的 VirtualHost 或者 Direcotry 里设置;或者修改Nginx的配置文件 fastcgi.conf里的PHP_ADMIN_VALUE open_basedir;
修改完后重启Apache或者Nginx就可以生效。

但是我看了下服务器上用的是nginx,但配置文件里没找到open_basedir信息,于是我又去查了下,发现是因为宝塔面板的原因,修改open_basedir是要下项目目录下的.user.ini的隐藏文件中修改,(或者也可以去掉网站目录下的勾选,防跨站攻击(open_basedir),然后重启php服务,但个人感觉不推荐)
在user.ini文件的open_basedir信息后面追加 “:/XXXXX/” ,xxxx是操作路径

在这里插入图片描述
然后发现报了另一个错误,这个报错就很明显了,大概率是日志存储路径文件夹权限的问题,我去修改了下文件夹的权限,发现日志迁移成功了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值