0
在Symfony2 docs存在於陳舊,同時,重新驗證的參考:與Symfony2的網關緩存Symfony2網關緩存是否支持「stale-while-revalidate」擴展?
// app/AppCache.php
use Symfony\Bundle\FrameworkBundle\HttpCache\HttpCache;
class AppCache extends HttpCache
{
protected function getOptions()
{
return array(
'debug' => false,
'default_ttl' => 0,
'private_headers' => array('Authorization', 'Cookie'),
'allow_reload' => false,
'allow_revalidate' => false,
'stale_while_revalidate' => 2,
'stale_if_error' => 60,
);
}
}
但是我不能達到以下行爲(described here):
我使用非常多的默認配置。我收到以下回復:
第一次請求時,響應來自服務器(花費300毫秒)。
Age:0
Cache-Control:public, s-maxage=20
X-Symfony-Cache:GET /api/boards/kQVhc2uJ: miss, store
第二次請求時,響應來自網關緩存(花費30ms)。
Age:4
Cache-Control:public, s-maxage=20
X-Symfony-Cache:GET /api/boards/kQVhc2uJ: fresh
第三次請求,響應來自服務器(花費300毫秒)。
Age:0
Cache-Control:public, s-maxage=20
X-Symfony-Cache:GET /api/boards/kQVhc2uJ: stale, invalid, store
我希望能夠從網關緩存和網關緩存返回第三個要求做出一個異步調用服務器重新驗證緩存。相反,我直接調用服務器傳遞網關緩存。
Symfony2 Gateway Cache是否支持「恢復狀態」擴展?或者它只對Squid或Varnish有用?
我已經問了一個更具體的問題,我的情況在這裏:http://stackoverflow.com/questions/22444320/symfony2-reverse-proxy-returns-stale-invalid這是一個嘗試,要求更直接Symfony相關的問題。 – Websirnik