yii2缓存写入失败问题排查记录

栏目: PHP · 发布时间: 6年前

内容简介:今天遇到了一个很奇怪的bug,只有同事的手机登录系统一直失败,其他人的都正常。在确认代码逻辑没问题后,发现是yii2写入缓存失败的问题。我们yii2的缓存组件是使用文件组件,进入缓存所在的文件夹,发现有少数几个文件夹拥有者是root,而不是运行php-fpm的apache,而这几个文件夹的权限为775,所以apache没有写入的权限。

问题

今天遇到了一个很奇怪的bug,只有同事的手机登录系统一直失败,其他人的都正常。

发现原因

在确认代码逻辑没问题后,发现是yii2写入缓存失败的问题。

我们yii2的缓存组件是使用文件组件,进入缓存所在的文件夹,发现有少数几个文件夹拥有者是root,而不是运行php-fpm的apache,而这几个文件夹的权限为775,所以apache没有写入的权限。

解决问题

使用chmod赋值777权限后,写入正常。

那么是什么导致这几个root文件的生成的呢?因为我们用了定时任务执行commonds,但是指定的用户是root,所以才出现了这个问题。把crontab里的用户指定改成apache,这问题就解决了。

防范于未然

如果是有人登陆并手动执行了commonds的话,也可能会生成apache操作不了的文件,所以让运维把所有登陆用户和apache放在一个组里,这个问题就完全解决了。


以上所述就是小编给大家介绍的《yii2缓存写入失败问题排查记录》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入理解C#(第3版)

深入理解C#(第3版)

斯基特 (Jon Skeet) / 姚琪琳 / 人民邮电出版社 / 2014-4-1 / 99.00元

本书是世界顶级技术专家“十年磨一剑”的经典之作,在C#和.NET领域享有盛誉。与其他泛泛介绍C#的书籍不同,本书深度探究C#的特性,并结合技术发展,引领读者深入C#的时空。作者从语言设计的动机出发,介绍支持这些特性的核心概念。作者将新的语言特性放在C#语言发展的背景之上,用极富实际意义的示例,向读者展示编写代码和设计解决方案的最佳方式。同时作者将多年的C#开发经验与读者分享,读者可咀其精华、免走弯......一起来看看 《深入理解C#(第3版)》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具