【发布时间】:2021-06-16 13:25:30
【问题描述】:
我想设置功能以将 Laravel 5.3 中的视图转换为静态 HTML 并将其提供给访问者,直到从 CMS 调用中指定为止。我还喜欢使用 HTTP 标头来缓存访问者计算机上的页面。
- 如何在启用路由缓存的情况下将视图作为静态 HTML 提供?
- 如何使用 HTTP 标头从用户缓存中提供静态 HTML 视图?
- 我可以/应该使用任何其他警告或性能提升技巧吗?
【问题讨论】:
我想设置功能以将 Laravel 5.3 中的视图转换为静态 HTML 并将其提供给访问者,直到从 CMS 调用中指定为止。我还喜欢使用 HTTP 标头来缓存访问者计算机上的页面。
【问题讨论】:
这里我会用代码回答File based cache。这不完全是HTML 缓存,但性能很好。
查看我的 Laravel 安装 /var/www/ea(这是我的 Laravel 安装目录)
第一步:如何创建缓存
第 2 步:这一步在第 1 步之前,即configure 缓存到file 缓存。打开config/cache.php 并检查两件事
'default' => env('CACHE_DRIVER', 'file'), //这意味着您的缓存默认驱动程序是基于文件的。
然后
'path' => storage_path('framework/cache'), //这是我上面截图的路径。
第 3 步:让我们编写代码来创建缓存。 打开您的 Controller 方法并编写以下内容
\Cache::put( 'cachekey', 'Hello I am Abdul', 1 ); // 1- minute
laravel documentation for cache
第 4 步:检查在 framework/cache/ 内创建的任何新目录
那是你的缓存文件。
// Following code check if the cache key already exists before creating,
// otherwise create cache file
if (Cache::has('key')){
Cache::get('key');
} else {
Cache::put('key', $values, 10);
}
【讨论】:
您可以使用一个简单的包。它可以轻松地将响应缓存为磁盘上的静态文件,以实现闪电般的快速页面加载。
【讨论】: