【发布时间】:2016-11-14 13:24:19
【问题描述】:
Varnish 在 Magento 1.8 中非常快。 问题是缓存中页面的刷新。
例如: 如果索引页面上的某些内容发生更改,我将使用此命令刷新:
Mage::getModel('turpentine/varnish_admin')->flushUrl("^/$");
然后这个脚本将页面重新加载到缓存中:
$header[0] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
$header[] = "Accept-Language: de,en-US;q=0.7,en;q=0.3";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($curl);
curl_close($curl);
它可以工作,但是当没有缓存时,包含很多产品的索引页面真的很慢。所以每个用户在重新加载期间都会看到这个缓慢的页面。
这个问题有什么解决办法吗?是否可以在刷新页面之前重新加载页面?
【问题讨论】:
标签: php magento caching varnish magento-1.8