我们的客户有一个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>
感谢任何帮助。
答案 0 :(得分:0)
在Requirements_Backend中看起来不是一个容易的地方。可以使用RequestFilter来完成。使用正则表达式或简单替换来修改响应正文。