如何告诉joomla使用HTTP标头进行缓存而不是HTML元标记

时间:2012-06-21 11:57:46

标签: caching joomla

我在Joomla有一个网站,有些网页可以缓存一段时间。

我在HTML中看到了元标记:

<meta http-equiv="expires" content="Fri, 29 Jun 2012 11:24:54 GMT" />
<meta http-equiv="cache-control" content="public" />

但我的CDN仅支持HTTP标头缓存。

Expires: Fri, 29 Jun 2012 11:24:54 GMT

如何告诉Joomla在响应正文中使用HTTP标头代替元标记?

1 个答案:

答案 0 :(得分:0)

经过一番挖掘后,我决定最好修改我正在使用的模板。

而不是写

$ExpStr = gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";

接着是

<meta http-equiv="expires" content="<?php echo $ExpStr ; ?>" />
<meta http-equiv="cache-control" content="public" />

我将其修改为

$ExpStr = gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
JResponse::allowCache(TRUE);
JResponse::setHeader( 'Expires', $ExpStr.' GMT' ,true);

这似乎有效

我在http://www.teachmejoomla.net/code/joomla-1.5/joomla-1.5-enabling-google-and-browser-cache.html

找到了这个提示

但是,我期望一些Joomla API用于配置要使用的实现。像Rails中的会话(最知名的)以及是否将其保存在cookie或DB中。