php – 启用缓存会影响动态内容吗?

启用缓存会影响动态内容吗?

例如,在我的一个PHP站点上,缓存标头设置为:

Cache-Control: public, max-age=21600

这是否也会影响动态内容?

如果是这样,那么缓存动态PHP站点的标准方法是什么?据推测,您可以缓存静态内容(例如图像),但不缓存动态内容(例如html,文本等).你将如何以及在哪里实现这一目标?

解决方法:

是.答案是肯定的.这可以控制浏览器和一些ISP缓存.它会在您在许多位置指定的时间内缓存动态内容.不是全部.并非所有浏览器都遵循规则,并非所有ISP都遵循规则.众所周知,AOL曾经忽略了人们的缓存规则,并在奇怪的时间缓存所有内容,导致早期网页上的页面损坏.

在未缓存的动态页面上,您可以使用此值将相对频繁更改的页面设置为缓存10分钟到一小时.对于图像,css,js文件和更长时间的东西.缓存8小时可能太多了,因为它远远超过1小时,但只会将内容的总点击次数减少7次.

其他缓存

还有其他可能更可靠的缓存内容的方法.您可以查看查询缓存,文件缓存,memcached.所有这些选项也可用于缓存内容以外的内容.他们都会帮助你加快重复行动.

查询缓存

许多数据库,MySQL是事实上的标准,提供查询缓存.这将缓存自上次运行查询以来尚未更新的表的查询结果.非常适合标准化的查找表.非常适合在蓝色月亮中仅更新一次的表格.适用于大约一次,每小时甚至每10分钟更新一次的表格.对于经常变化的表格,它们将产生有限的节省时间的结果.

文件缓存和Memcached

这些可用于缓存键/值对信息.它们可以是page_url / page_content或page_list / array_of_pages_in_site或您需要的任何其他键/值对.这就是大多数人最近如何将页面缓存10-60分钟.它们可靠,可在服务器上控制,并可在需要时立即刷新.它们不需要基于时间,如果您的逻辑写得正确,您可以将它们视为查询缓存.只有在更新信息时,才会从缓存中刷新该密钥,然后页面立即更新,否则将位于缓存中.

标头缓存

这让我们回到标题缓存.即使使用其他缓存,在这里缓存大约10分钟仍然很聪明.其他缓存仍然需要服务器的请求,这可能会降低它的速度.虽然这不会减少很多压力,但会减少压力.并且安装不需要花费太多精力.

相关文章

文章浏览阅读8.4k次,点赞8次,收藏7次。SourceCodester Onl...
文章浏览阅读3.4k次,点赞46次,收藏51次。本文为大家介绍在...
文章浏览阅读1.1k次。- php是最优秀, 最原生的模板语言, 替代...
文章浏览阅读1.1k次,点赞18次,收藏15次。整理K8s网络相关笔...
文章浏览阅读1.2k次,点赞22次,收藏19次。此网络模型提供了...
文章浏览阅读1.1k次,点赞14次,收藏19次。当我们谈论网络安...