根本原因所拥有的 Laravel Storage Cache 文件夹无法清除缓存

我有一个 laravel 7 应用程序在服务器上运行(Ubuntu 18.04 LTS,apache2 webserver)。我的问题是,它php artisan cache:clear确实返回“无法清除缓存。请确保您具有适当的权限。”

我尝试了以下方法但没有成功:

  • chmod -R 775 storage

  • php artisan config:cache

  • 手动删除“bootstrap/cache/services.php”+“bootstrap/cache/packages.php”+“bootstrap/cache/config.php”

在“存储/框架/缓存/数据”中新创建的缓存文件夹有时由用户root拥有,这似乎是问题所在。

如果我手动删除这些文件夹,它会一直工作,直到创建新的根文件夹。

我看到ps -auxlaravel 进程是从 root 用户运行的。我用 更改了它sudo -u myusername,但这并没有改变行为。php artisan serve我在服务器重新启动时在 rc.local 脚本中启动 laravel 应用程序 ( )。

当前用户“myusername”位于 www-data 组中。


慕田峪7331174
浏览 175回答 2
2回答

莫回无

问题应该是你的存储路径中没有文件夹。你应该有存储/框架/会话存储/框架/视图存储/框架/缓存尝试创建空文件夹,应该可以。

慕无忌1623718

您必须从与当前用户属于同一用户组的用户运行网络服务器。默认情况下rc.local从用户调用命令root,这不是您需要的。rc.local这样编辑你的:su user01 -c 'php /var/www/artisan serve'user01您当前的用户在哪里,/var/www/artisan是您的 artisan 文件的完整路径。另外,也许您应该指定 php bin 文件的完整路径,例如/usr/bin/php或者其他。
打开App,查看更多内容
随时随地看视频慕课网APP