Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在用户每次使用iOS'访问我的网站时删除缓存文件;游猎?_Php_Html_Css_Safari - Fatal编程技术网

Php 如何在用户每次使用iOS'访问我的网站时删除缓存文件;游猎?

Php 如何在用户每次使用iOS'访问我的网站时删除缓存文件;游猎?,php,html,css,safari,Php,Html,Css,Safari,我对网络开发还很陌生,最近我制作了一个简单的网站,没有使用任何框架。我确保遵循“响应式网页设计”,使我的网站便于移动。我曾在桌面(Firefox和Chrome)和手机(iOS Safari)等多个设备上测试过我的网站,但有一段时间,在编辑CSS文件后,CSS规则没有正确加载,因此我为手机网站设计的样式没有应用于HTML标记 我找到了解决这个问题的方法,那就是删除iOS设备上的所有网站缓存,然后重新访问该网站,并按预期显示该网站 有没有办法删除/刷新设备上为我的网站存储的缓存? 提前谢谢 最简单的

我对网络开发还很陌生,最近我制作了一个简单的网站,没有使用任何框架。我确保遵循“响应式网页设计”,使我的网站便于移动。我曾在桌面(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中的任何更改(如添加/更改查询参数)都将强制浏览器重新下载文件。