在 Laravel 5 中的共享托管服务器上不使用 CLI 清除缓存
尽管 Artisan 命令 cache:clear 可以有效地清除缓存数据,但用户仍在寻求替代方案没有 CLI 访问权限的方法可能会遇到挑战,特别是在控制面板访问受到限制的共享托管服务器上。本文深入研究了一种解决方法来解决这个问题。
要清除缓存,包括视图缓存,可以使用 PHP 的 Artisan::call 方法。通过将此方法集成到路由中,可以在传统 CLI 环境之外调用 Artisan 命令。
考虑以下 PHP 代码:
<code class="php">Route::get('/clear-cache', function() { $exitCode = Artisan::call('optimize:clear'); // return what you want });</code>
此代码片段定义了一个路由,通过 GET 请求访问时,调用 optimize:clear Artisan 命令。 Optimize:clear 命令包含了 cache:clear 和 view:clear,确保两种缓存类型都被清除。
或者,如果需要,可以专门调用 Artisan::call('view:clear')仅清除视图缓存。
为了进一步参考,Laravel 官方文档提供了在 CLI 环境之外调用 Artisan 命令的全面指南。
值得注意的是,默认情况下,Laravel 存储应用程序缓存在存储/框架/缓存目录中。但是,可以通过修改 config/cache.php 中的文件驱动程序来自定义此配置。通过使用 Redis 或 Memcached 等高性能驱动程序而不是基于文件的缓存,用户可以显着增强缓存功能。
以上是如何在共享主机上没有 CLI 访问的情况下清除 Laravel 5 中的缓存?的详细内容。更多信息请关注PHP中文网其他相关文章!