2012-03-20 102 views
1

我试图减少HTTP请求。我每天都有一个拥有大量独特访问者的网页,每位访问者每天进入该页面35次。 这个页面只是一个在24小时内调用另一个页面的JS脚本。 所以我被告知如果我想减少服务器的负载,我应该使用HTML缓存。问题是我不知道什么是最适合我的,因为有很多选项“公共”,“私人”等等。任何人都可以帮我解决这个问题吗?减少HTTP请求 - HTML缓存

我不介意我不会立即选择更改页面的内容,我必须等待延迟时间,直到更新将在每个人的缓存中。

+1

HTML缓存?你在谈论浏览器的缓存吗? – 2012-03-20 18:59:19

+0

你应该明确地在http://webmasters.stackexchange.com或http://www.serverfault.com – 2012-03-20 19:05:27

+0

与人谈话如何发送正确的HTTP头? – 2012-03-20 19:06:00

回答

0

控制缓存的最佳方法是设置适当的HTTP标头。由于您的评论声明您使用PHP,因此我建议您查看PHP的header(),它可用于为您的页面设置HTTP标头。

要缓存的页面24小时,你可以在你的页面的头把这个:

<?php header('Expires: '.gmdate('D, d M Y H:i:s \G\M\T', time() + (24 * 60 * 60))); ?> 

它也可以通过.htaccess文件来完成,如果你的运行Apache Web服务器。看看这个SO post了解更多关于如何操作的信息。

有关过期标题的更多信息,看看Yahoo's article about expires headers

0

您可以安装Varnish来缓存您的网站。基本上,在从网站请求一个页面之前,它会查找Varnish中的页面,如果它在那里,它将返回缓存的HTML版本。

如果您需要更新网站的内容,您可以简单地清除Varnish缓存,以便它将使用您的新HTML代替(然后将再次缓存)。

+0

我应该真的使用它吗? 该系统是一个基于PHP的系统,记录用户的统计信息,当每个用户拥有自己的数据时,它不会帮助我。唯一的网页 - HTML(和JS)是这一页,其他的都是PHP。 – 2012-03-20 19:40:51

+0

它仍然可以工作:PHP生成页面并清漆缓存它。只要缓存版本与PHP将生成的HTML相同,就可以将缓存版本提供给用户。因此,如果内容只是每24小时更改一次,那么您只需使用PHP生成一次该页面。在这一天剩下的时间里,可以使用缓存版本。 – 2012-03-20 19:51:48