如何在Silverstripe CMS Javascript上禁用Rocket Launcher?

时间:2017-05-01 22:00:48

标签: javascript silverstripe cloudflare

我们的客户有一个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>

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

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