linux “sudo php artisan cache:clear”无法清除缓存,即使我是root &无效的缓存路径[关闭]

1cosmwyk  于 2023-10-16  发布在  Linux
关注(0)|答案(4)|浏览(160)

已关闭此问题为not about programming or software development。它目前不接受回答。

这个问题似乎不是关于a specific programming problem, a software algorithm, or software tools primarily used by programmers的。如果你认为这个问题与another Stack Exchange site的主题有关,你可以留下评论,解释在哪里可以回答这个问题。
12天前关闭
Improve this question
因此,我在运行Amazon Linux 2的AWS中的EC2上运行Laravel 5.7.29和PHP 7.2.34,我已经完全设置了项目并尝试运行它,但每当我使用EC2公共IP和端口连接时,我都会得到这个错误:

我首先检查.env并确保CACHE_DRIVER=file,然后检查PHP/cache.php并确保

'default' => env('CACHE_DRIVER', 'file'),

在那里,

'file' => [
     'driver' => 'file',
     'path' => storage_path('framework/cache/data'),
],

然后我看到项目没有做“storage/framework/cache/data”,所以我做了这个文件夹,并确保给予它和bootstrap/cache的阅读和写入权限,

sudo chmod -R 775

然后仔细检查我用了

ls -la

检查权限,所有权限都归root所有,在此之后,我这样做了

sudo php artisan cache:clear

仍然得到了这个

,更令人困惑的是,我使用sudo,仍然得到了错误,然后我试图运行服务器和curl本地主机,令人惊讶的是,它工作,没有任何错误被抛出,被这个问题卡住了至少2天,有什么解决方案吗?
编辑1:我在另一个目录中再次克隆了repo,并尝试了所有其他步骤,仍然得到相同的错误,奇怪的是,当我执行chown -R 777 bootstrap/cache storage时,我仍然得到了权限错误,然后我将其返回到775
编辑2:我已经联系了一个人从团队谁是工作的项目讨论这个问题,希望它会得到解决,感谢大家的建议和善良^^
编辑3:我终于设法修复了这个错误,在联系开发人员后,他告诉我,php artisan cache:clear将查看一个名为dstore的文件进行缓存,但该文件不存在,所以我做了dstore/framework/cache/data,它工作了,谢谢大家的帮助^^

2ic8powd

2ic8powd1#

请不要在php artisan命令前使用sudosudo是一个用于类Unix计算机操作系统的程序,它使用户能够以另一个用户(默认为超级用户)的安全权限运行程序。而Artisan是Laravel中包含的命令行界面。
简而言之,只需运行:

php artisan cache:clear
dbf7pr2w

dbf7pr2w2#

当我在laravel应用程序中遇到权限问题时,我运行这些命令来解决这个问题。在storage/framework文件夹中手动创建必要的文件夹,然后更改bootstrapstorage文件夹的所有者和权限

mkdir -p storage/framework/{sessions,views,cache}

sudo chown -R www-data:www-data storage
sudo chmod -R 775 storage
sudo chown -R www-data:www-data bootstrap/cache
sudo chmod -R 775 bootstrap/cache
m2xkgtsf

m2xkgtsf3#

当你使用amazon Linux时,你可能不会发现chmod -R www-data:www-data storage命令有什么用。默认情况下,amazon Linux使用ec2-user作为用户。因此,您应该首先使用命令whoami查找当前用户名;之后,您应该根据服务器用户组获得足够的权限。我不确定你是否使用Apache或Nginx来部署你的项目。
然后,您应该通过以下方式为存储和缓存目录授予给予适当的组权限
chmod -R $USER:$USER storage
chmod -R $USER:$USER bootstrap/cache

vyu0f0g1

vyu0f0g14#

在联系开发人员后发现了这个问题,php artisan cache:clear寻找自定义dstore目录而不是默认存储,我做了dstore/framework/cache/data并再次运行该高速缓存清除命令,它工作了,谢谢大家的建议和善意^^

相关问题