另一种在javascript中创建随机动态url的方法/阻止wpengine缓存

Another way to create random dynamic url in javascript/stop wpengine from caching

本文关键字:方法 阻止 缓存 wpengine url 动态 javascript 创建 随机 另一种      更新时间:2023-09-26

我在一个bigcommerce中包含了一个PHP文件(正式的插曲(。PHP 文件来自 wpengine 站点。包含该文件如下所示:%%Include.http://www.server.com/testing.php?store_id=4649b4c235fba82029176fa8a802c3%%

操作方法就在这里:http://www.interspire.com/support/kb/questions/209/How+do+I+Include+a+php,+html,+asp+or+any+other+type+of+file+in+an+Interspire+Knowledge+Manager+template+%3F

因此,一切正常,但是,

所包含的文件包括每分钟更新一次的时钟,但是wpengine站点是通过他们自己的cdn 提供的,因此时钟仅每20分钟左右更新一次。如果我以任何方式更改 url,缓存将重置。

我可以通过将 url 保存为%%Include.http://www.server.com/testing.php?store_id=4649b4c235fba82029176fa8a802c3&variable=123456789%%并再次保存为%%Include.http://www.server.com/testing.php?store_id=4649b4c235fba82029176fa8a802c3&variable=987654321%%来重置缓存

但是如果我尝试通过添加 js 变量使其动态化:

<script>
variable = Math.floor(Math.random() * 1000) + 1;
document.write("%%Include.http://www.server.com/testing.php?store_id=4649b4c235fba82029176fa8a802c3&variable=" + variable + "%%");
</script>

它不起作用,我不太确定发生了什么。包含正确的文件和store_id,但变量似乎没有改变任何内容。

关于如何包含动态变量或其他方法来防止 CDN 缓存该页面的任何其他想法?

这取决于您在 BC 上使用它的文件,但您可以尝试附加 BC 在他们的某些 JS 文件上使用的缓存破坏字符串,它只使用我相信的日期/时间戳。

%%Include.http://www.server.com/testing.php?store_id=4649b4c235fba82029176fa8a802c3&variable=%%GLOBAL_JSCacheToken%%%%

以前没有尝试过这个,但我希望它对你有用!

您可以

尝试联系 WPE 支持并让他们从缓存中排除store_id参数。