【发布时间】:2017-09-13 07:06:17
【问题描述】:
需要明确的是,这与脚本标签无关。我没有使用它们。这是使用 PHP 包含放置在页面上的 JS。
我的大多数 JavaScript 文件都混合在 PHP 中,并使用 PHP 的 include 而不是 script 标签。通常解决方案是在脚本标签的 src 属性末尾添加一个查询字符串。据我所知,当我使用 include 时,我真的不能这样做。在大多数情况下,我在移动设备上遇到问题,用户无法在他们的设备上获取最新的 JS 源而不是旧的存储缓存版本。
【问题讨论】:
-
一个 .php 文件就是一个 .php 文件。 JavaScript 文件是 JavaScript 文件。一个可能包含另一个的语法,但非文件扩展名代码将被视为字符串。
-
我要问的是,我如何强制用户获取我的源代码的最新版本?
-
设置过期标头是一种可能
-
我认为人们如此迅速地诉诸否定的 cmets 并在没有任何解释的情况下投反对票是愚蠢的。这是一个公平的问题。
-
“它会强制用户每次访问页面时都下载 JS” 您无法提前知道何时发布更改,所以您无法确定将缓存到期设置为多长时间。这就是为什么缓存失效是计算机科学中最难的两件事之一。 (另一个当然是命名事物,以及一个接一个的错误。)
标签: javascript php caching include