当脚本有参数时Firefox 或 Chromium记住浏览器调试器中的断点

问题描述

所以我在 PHP 中有这段代码以避免缓存:

<script src="urlofthescript?v=<?PHP echo rand(); ?"></script>

但是当我调试并为脚本的任何行分配断点时,浏览器会删除它们,因为它将文件检测为新文件,任何避免这种情况的方法,或者我唯一的选择就是不放置随机字符串,我在技术上不允许这样做?

解决方法

与其使用 rand() 告诉浏览器永远不要缓存文件 - 为什么不以某种方式对文件进行指纹识别。也许使用 md5_file 函数。

这样,每当文件实际更改时,md5 哈希值也会更改。但是如果文件没有改变,浏览器可以缓存掉。