Php 如何在用户每次使用iOS'访问我的网站时删除缓存文件;游猎?
我对网络开发还很陌生,最近我制作了一个简单的网站,没有使用任何框架。我确保遵循“响应式网页设计”,使我的网站便于移动。我曾在桌面(Firefox和Chrome)和手机(iOS Safari)等多个设备上测试过我的网站,但有一段时间,在编辑CSS文件后,CSS规则没有正确加载,因此我为手机网站设计的样式没有应用于HTML标记 我找到了解决这个问题的方法,那就是删除iOS设备上的所有网站缓存,然后重新访问该网站,并按预期显示该网站 有没有办法删除/刷新设备上为我的网站存储的缓存?Php 如何在用户每次使用iOS'访问我的网站时删除缓存文件;游猎?,php,html,css,safari,Php,Html,Css,Safari,我对网络开发还很陌生,最近我制作了一个简单的网站,没有使用任何框架。我确保遵循“响应式网页设计”,使我的网站便于移动。我曾在桌面(Firefox和Chrome)和手机(iOS Safari)等多个设备上测试过我的网站,但有一段时间,在编辑CSS文件后,CSS规则没有正确加载,因此我为手机网站设计的样式没有应用于HTML标记 我找到了解决这个问题的方法,那就是删除iOS设备上的所有网站缓存,然后重新访问该网站,并按预期显示该网站 有没有办法删除/刷新设备上为我的网站存储的缓存? 提前谢谢 最简单的
提前谢谢 最简单的方法是向文件中添加查询参数。基本上看起来是这样的
<script src="/path/to/your-script.js?v=1.0.01"></script>
您可以对所有静态文件(CSS、JS、图像)执行相同的操作。每次更改“v”的值都会迫使Safari重新下载该文件。不过,这更像是一种生产黑客行为,迫使用户下载新版本的静态文件
最终,在开发服务器上,您希望禁用带有来自服务器的头的浏览器缓存(无论是Apache、Nginx还是其他)。萨法里尊重这些
如果您使用PHP来输出HTML,那么可以使用以下代码来确保始终具有动态变量
<script src="/path/to/your-script.js?js=<?= time(); ?>"></script>
好的,谢谢,关于“v”值是什么以及它是如何做到这一点的,你有什么参考吗?“v”是我编的一个变量。这是一个HTTP查询参数。你基本上可以用你想要的任何东西来代替“v”。我用“v”作为“version”的首字母缩略词。浏览器缓存发生在URL级别,因此URL中的任何更改(如添加/更改查询参数)都将强制浏览器重新下载文件。