2012-09-25 44 views
4

作为我计划的新CMS的一部分,我将缓存某些“静态”内容的HTML输出。我说“静态”是因为没有存储在数据库中的内容真的是静态的,但它足够接近。系统将MD5对请求URL进行哈希处理,并将缩小版本的HTML输出保存在缓存文件夹中。下一次请求页面时,CMS将检查缓存版本是否存在,然后它会检查文件的年龄,然后提供缓存版本,从而节省大量资源(尤其是涉及到数据库调用)。nginx可以提供PHP缓存的文件吗?

很明显,让nginx提供静态文件而不用靠近PHP将会更快。那么有没有办法让nginx散列请求URL并检查临时文件夹以查看它是否存在?

+2

我认为你可以在Nginx Conf中做到这一点 - 基本上你使用get-loadUrl = get(md5).html - NGINX已经与主要的缓存库一起工作。许多CDN公司使用它来做你正在做的事情 - 提供静态内容 - 你甚至可以为它压缩等 – TheBlackBenzKid

回答

1

是的!

你可以让nginx缓存来自fcgi的响应。它正在使用您必须启用nginx的HttpProxyModule

Here是一个很好的指导如何做到这一点。

或者,你也可以使用nginx和memcache。实际上有很多选择给你。两者都很好!

+0

嗨李。微型缓存看起来是一个好主意,但它表示它不适用于个性化内容。这个CMS也是一个电子商务网站,所以显然我们不能提供缓存版本的购物车!不错的想法,但可能会在我的其他项目中使用它。 –

+0

您可以随时使用memcache来缓存不唯一的页面部分 –