0

我想要做的是缓存一个页面 1 小时。问题是,如果我的对象被修改,我希望能够在这 1 小时内将案例设置为陈旧。

到目前为止,这是我的代码:

$response = new Response();
$response->setLastModified(new \DateTime($lastModified));        
if ($response->isNotModified($this->getRequest()))
    return $response;
else
    $response->setCache(array(
        'public' => true,
        'max_age' => 3600, 
        's_maxage' => 3600,
    ));

问题是上面的代码没有检查 lastModified。创建 1 小时缓存后,我必须等待整整 60 分钟才能看到我对对象 ($lastModified) 所做的更改。

4

1 回答 1

0

这是symfony2 文档中使用 Last-Modified 标头缓存页面的示例

我认为您的错误是您尝试使用 Last-Modified 然后用 Cache-Control 标头(max_age,s_maxage)重写它。

于 2012-11-28T18:16:38.477 回答