【发布时间】:2022-04-26 01:09:14
【问题描述】:
我被困在一个 Laravel 项目中,我已经使用 Laravel 很多年了,从来没有发生过这种情况。
我正在使用 Vagrant(一如既往)并且只在 PHP 8 中发生这种情况,在其他项目中使用 php 7.X 不会发生。
USER 和 GROUP 权限一如既往。我跑chmod -R 777 storage 和引导/缓存很多次。
我跑了所有的缓存:清除。
我不知道为什么会这样。
有人对 Laravel 和 PHP 8 有疑问吗?
谢谢!
【问题讨论】:
-
您尝试过什么来解决问题?如果您尝试手动创建该文件,它可以工作吗?另外,最后的工作状态和损坏的状态之间究竟发生了什么变化?
-
@NicoHaase 该文件存在,如果我运行 cache:clear 它会再次与另一个文件一起发生。这只发生在 PHP8 中。 (这是一个新项目,但是我有另一个项目用php8,也有存储权限的问题)
-
@RizkyArlin no mate... 我使用数据库和 Redis 而不是文件系统解决了一些会话和缓存问题,但存储仍然失败。我想可能是我的宅基地机器,因为我没有看到更多人有同样的问题。我将尝试 Laravel 代客,看看它是否有效
-
我在 laravel 8 和 php 7.4 的生产环境中遇到了同样的问题。它是零星的,实际上总是由上面的 chmod 临时修复,但后来由于 laravel 创建了一个由 root 拥有的新缓存目录而再次出现。这显然是一个错误。有人有永久修复吗?
-
@Daryl,您是否尝试过创建由 root 拥有的目录?有些东西在那里以 root 身份运行,一个 cronjob 或具有 SSH 访问权限的人在那里运行服务任务。 PHP 不会随机创建您无法通过正常方式创建的目录。这个问题缺少minimal reproducible example。缺少太多的拼图。