php - 控制浏览器缓存

标签 php javascript html caching browser

所以假设我在一个页面中有一大堆图像,然后我转到一个具有完全相同的图像和布局的不同网址,因为网址不同,浏览器将重新加载所有图像、布局等,并且不会从缓存中显示它们,即使它们是完全相同的图像/布局....

有没有办法防止这种情况并控制浏览器仅使用 javascript、php 或 html 缓存内容的方式?

编辑/添加

另外有趣的是,首先我有同一网站的两个副本,一个位于本地服务器上,另一个位于远程托管服务器上......

本地服务器上的缓存完美,并且没有任何图像重新出现,而如果我访问远程服务器上的图像,图像将尝试重新出现......尽管文件等实际上是相同的本地和远程服务器之间...

编辑/添加

另一个有趣的事情......缓存可以在 IE 和 Chrome 上工作,甚至对于远程服务器来说也是如此,但由于某种原因,它会在 Firefox 中搞砸......

另一方面,本地服务器中的内容甚至适用于 Firefox

最佳答案

使用 header 询问浏览器缓存没有帮助

    header("Cache-Control: private, max-age=5400, pre-check=5400");
    header("Pragma: private");
    header("Expires: " . gmdate("D, d M Y H:i:s"). " GMT");

有一个很好的网站可以检查返回的 header http://redbot.org尝试一下,它可能会有所帮助,另外还有http://www.mnot.net/cache_docs/如果您没有想到答案,您可能想看看。

关于php - 控制浏览器缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5344941/

相关文章:

php - 如果在 URL 中请求 .php 扩展名,则重定向到 404

javascript - 通过选择器 getElementByClassName 选择具有相同类的所有元素未按预期工作

javascript - 从客户端的复选框列表中设置第一个复选框被选中,其他复选框被禁用

html - 使用 BEM 和 Less 时如何在子元素上应用悬停选择器?

javascript - 在 python 中使用 Bokeh 实现完整的 3d 散点图

php - 如何在RabbitMQ中手动拉取队列数据?

php - 节点中内容的 XPath 表达式,直到遇到带有字符串的节点

php - 如何更改 css 中的默认滚动条设计?

php - 删除 Laravel 集合对象中的最后两行

javascript - 如何在 NestJS 中记录所有 Axios 外部 http 请求