nginx能否提供由PHP缓存的文件?

4
作为我计划中新CMS的一部分,我将缓存一些“静态”内容的HTML输出。我说“静态”,因为没有存储在数据库中的内容是真正静态的,但足够接近了。该系统将MD5哈希请求URL并保存HTML输出的压缩版本到缓存文件夹中。下次请求页面时,CMS将检查缓存版本是否存在,然后检查文件的年龄,然后提供缓存版本,从而节省大量资源(特别是涉及DB调用时)。
显然,让nginx提供静态文件而不接触PHP会更快。那么有没有办法让nginx哈希请求URL并检查临时文件夹是否存在呢?

2
我认为你可以在Nginx Conf中完成这个操作 - 基本上你使用一个get请求 - loadUrl=get(md5).html - NGINX已经与主要的缓存库兼容。许多CDN公司使用它来执行你正在做的事情 - 提供静态内容 - 你甚至可以压缩它并提供服务。 - TheBlackBenzKid
1个回答

1

可以的!

您可以让nginx缓存fcgi的响应。它使用了您必须启用到nginx中的HttpProxyModule

这里有一个很好的指南告诉您如何操作。

或者,您也可以使用带有memcache的nginx。实际上,您有相当多的选择。两种方法都非常有效!


嗨李。微缓存看起来是个好主意,但它说对于个性化内容不起作用。这个CMS也将成为一个电子商务网站,所以显然我们不能提供购物车的缓存版本!不过是个不错的想法,可能会在我的其他项目中使用。 - James Pegg
你可以随时使用memcache来缓存页面中不唯一的部分。 - Lee Armstrong

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接