首页 > 解决方案 > 如何防止 laravel 更改文件夹所有者

问题描述

有时我们会在 Laravel 项目中面临一个破坏性的问题:

存储日志文件

production.ERROR: Unable to create lockable file: /var/www/html/storage/framework/cache/data/... Please ensure you have permission to creto create files in this location.
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Filesystem/LockableFile.php(43)

当问题发生ls -l

drwxrwsr-x+   2 apache   apache     4096 Sep  2 14:36 logs

为了解决我们运行的问题,sudo chown -R ec2-user:apache logs/它给出了

drwxrwsr-x+   2 ec2-user   apache     4096 Sep  2 14:36 logs

但这是手动修复...

因此,我想问:

A)如何防止文件系统突然更改所有者而破坏编码?

B)另外,如何在 Laravel 项目中触发生产错误通知以警告此类问题?

标签: laravelapachefilesystemschown

解决方案


回答您的第二个查询,您可以使用它们中的任何一个进行错误报告:

  1. 哨兵
  2. 耀斑
  3. 布斯纳格

所有异常都由App\Exceptions\Handler类处理,在这个类中,有一个名为register的方法,您可以在其中配置上述任何工具,以便在那里报告异常。否则,您可以构建自定义报告方法,例如向您发送带有异常消息的电子邮件或发送松弛通知。


推荐阅读