可以缓存所有html / php页面,除了它的一部分在浏览器中?

时间:2017-08-22 08:48:06

标签: php html caching

是否可以缓存所有页面,但不在浏览器中缓存部分页面? 例如,我有一个日期页面。只有日期每天都在变化,页面的其余部分永远不会改变。我将如何在浏览器中缓存这样的页面?

浏览器缓存页面上是否包含动态内容? 实际上,我不熟悉缓存,我不明白它如何与动态内容和浏览器缓存一起工作。这是正确的,从缓存某个动态页面的那一刻起,它总是在缓存期间服务,并且不显示新的动态内容?

我不询问服务器端缓存,只讨论浏览器端缓存。

2 个答案:

答案 0 :(得分:2)

没有用于忽略缓存页面一部分的特定工具。但是你可以做一些技巧:

  • 您可以缓存整个页面并通过iframe更改所需的部分!
  • 您可以缓存整个页面并通过ajax更改所需的部分!

  • 您可以缓存整个页面并通过javascript更改所需的部分 文件!

我没有检查iframe解决方案,也不确定它是否有效。

如果js文件有缓存,您可以在其文件名中添加一个版本,如scripts.v.2.3.js,并按版本名称加载它们。

答案 1 :(得分:0)

你无法真正动态缓存" part"但是,对于文件,您可以缓存单独的资产,将页面拆分为单独的资产的次数越多,可以分别缓存每个资产的次数越多。

  • 您的index.html可以设置缓存设置为dont-cache(使用Cache-Control标头)
  • 您的logo.png可能有10天的长缓存

现在,如果你想让某些元素发生变化,但核心要保持不变,那么我相信这对JavaScript来说会更好。你可以做的是编写一个Javascript函数来显示日期,然后你可以完全缓存HTML页面和Javascript页面,因为原始内容永远不会改变(只有DOM的操作你有很少的客户端 - >服务器请求。