一尘不染

Laravel 5 –清除共享主机服务器中的缓存

php

问题很清楚。

php artisan cache:clear

是否有任何变通办法来清除缓存,就像我们在CLI中使用的一样。我正在使用流行的共享托管服务,但是按照我的计划,我没有控制面板访问权限。

我想清除视图缓存。

我看到了几乎与此相同的问题,但这无济于事。


阅读 265

收藏
2020-05-29

共1个答案

一尘不染

您可以在CLI外部调用Artisan命令。

Route::get('/clear-cache', function() {
    $exitCode = Artisan::call('cache:clear');
    // return what you want
});

更新资料

无法删除视图缓存。也不php artisan cache:clear是。

如果您确实想清除视图缓存,我认为您必须编写自己的artisan命令并按我之前所说的那样调用它,或者完全跳过artisan路径并清除从控制器或路由调用的某些类中的视图缓存。

但是,我真正的问题是 您是否真的需要清除视图缓存 ?在我现在正在处理的项目中,我有近100个缓存视图,它们的权重小于1
Mb,而我的vendor目录> 40 Mb。我认为视图缓存不是磁盘使用的真正瓶颈,也从未真正需要清除它。

至于 应用程序缓存
,它存储在storage/framework/cache目录中,但前提是您在中配置了file驱动程序config/cache.php。您可以选择许多不同的驱动程序,例如
RedisMemcached ,以提高基于文件的缓存的性能。

2020-05-29