1

我正在尝试确保我的应用程序正确缓存我的页面。我的控制器中有以下代码

//...in controller
$response = $this->render('FrontBundle:Page:index.html.twig', $data);
$response->setPublic();
$response->setMaxAge(600);
$response->setSharedMaxAge(600);
//this appears only on the first page load
echo 'this was not cached';
return $response;

当我第一次加载页面时,我看到这没有缓存,每次后续刷新都不会显示此消息,所以我很确定我的缓存正在被命中。

但是,当我查看我的日志文件时,我会在每个请求中看到类似以下内容

[11-Apr-2013 UTC] GET /_wdt/462e0da5f0afdfb7ad62760f48e41429e2b86fbd: miss

我不应该hit在第一页加载后看到吗?

这是我在 app_dev.php 中使用的代码,如此处所示

$kernel = new AppKernel('dev', true);
$kernel->loadClassCache();
$kernel = new AppCache($kernel);
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
error_log($kernel->getLog());
4

1 回答 1

0

我不应该在第一页加载后看到点击吗?

/_wdt对那个 URL 的请求不是对Symfony 的 Web Debug Toolbar请求,它们从不被缓存。你只看到它们,因为你在dev环境中。

此外,从缓存服务的请求看起来像GET /some_page: fresh

于 2013-12-11T00:21:59.533 回答