假设您有一个页面可能每年更改两次,例如联系页面,但其背后有一个自定义 CMS,并且是用 PHP/Laravel 编写的。是否可以从客户端缓存中提供此服务,以便将网络使用量保持在最低水平。使用 Varnish 或类似的模块?
答案1
Varnish 会运行在你的应用程序前面,接收所有请求,响应缓存中的请求,并将其余请求转发到你的应用服务器。因此它不能按你的需要使用。
客户端上唯一运行的是浏览器。因此可以使用缓存控制标头。
在您描述的场景中,您可以按以下方式使用 PHP 设置页面标题:
<?php
header("Cache-Control: max-age=15778463"); //6 months
?>