缓存 - 从控制器提供的图像

时间:2016-04-05 15:20:56

标签: symfony controller browser-cache

我有一些图像,我希望能够为我的用户提供一年的有效期。

$file = $fileService->getFile($imageFilepath);
$headers = array(
    'Content-Type' => $file->getMimeType(),
    'Content-Disposition' => 'inline; filename="img.'.$file->getExtension().'"'
);
$response = new Response(file_get_contents($file), 200, $headers);
$response->setExpires(new \DateTime('+1 year'));

return $response;

我可以从浏览器控制台看到标题设置正确,但图片始终为GET 200 OK

我也试过Cache-Control& ETag,仍然从服务器获取图像。

这怎么可能发生? 如何将此图片返回有效期一年?

1 个答案:

答案 0 :(得分:0)

尝试使用$response->setLastModified()方法