【问题标题】:How to disable Rocket Launcher on Silverstripe CMS Javascript?如何在 Silverstripe CMS Javascript 上禁用 Rocket Launcher?
【发布时间】:2017-05-01 22:00:47
【问题描述】:

我们的一个客户有一个 Silverstripe 网站,他们在一家公司托管该网站,该公司将 Cloudflare CDN 应用于他们的托管计划。

我们无法访问 Cloudflare 设置,但想要更改“Rocket Launcher”设置之一,使其不会触及 Silverstripe CMS Javascript 文件(lib.js、leftandmain.js)。

It is possible to make Rocket Launcher ignore a script:

<script data-cfasync="false" src="/javascript.js"></script>

但是 CMS javascript 是由核心 Silverstripe 代码动态加载的:

Requirements::combine_files('leftandmain.js', $leftAndMainIncludes);

是否可以通过扩展核心代码将data-cfasync="false"变量添加到脚本标签中?

我希望输出读取:

<script type="text/javascript" data-cfasync="false" src="/assets/_combinedfiles/leftandmain.js?m=1486678668"></script>

感谢任何帮助。

【问题讨论】:

  • 我不这么认为。生成的脚本标签被硬编码到Requirements::includeInHTML

标签: javascript silverstripe cloudflare


【解决方案1】:

在 Requirements_Backend 中看起来并不容易。可以使用 RequestFilter 来完成。使用正则表达式或简单替换来修改响应正文。

【讨论】:

猜你喜欢
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-29
相关资源
最近更新 更多