由于CFIDE \ scripts

时间:2018-02-06 17:45:51

标签: coldfusion-9 coldfusion-11

我的团队最近从ColdFusion 9迁移到ColdFusion 11.我们目前正处于测试阶段。在我们的测试过程中,我们发现有许多下拉列表没有被填充。这些列表是从其他列表的选择中填充的。

起初我们研究了cfselect,但发现这不是问题,因为我们深入挖掘,我们发现脚本(cfform.js,cfmessage.js,cfajax.js,cf.css和其他几个)我们利用功能由于CFIDE锁定而无法再访问。在网上进行一些研究后,我们最终在WebOps团队的帮助下完成了以下工作。

  1. 在D:\ CF11 \ cfusion \ wwwroot \中创建一个名为cfM_scripts的文件夹
  2. 从CFIDE移动脚本文件夹并粘贴到cfM_scripts
  3. 在IIS中右键单击devtest.mysite.com网站并选择添加虚拟目录
  4. 命名别名/ cfM_scripts
  5. 在CF管理员设置中,“默认ScriptSrc目录”设置为/ cfM_scripts / scripts
  6. 将虚拟目录指向D:\ CF11 \ cfusion \ wwwroot \ cfM_scripts \ scripts \
  7. 尽管我们的一个系统管理员正在执行以下操作,但我们仍然遇到同样的问题。现在我知道最佳实践声明不使用那些内置的脚本文件,但我们只是想在开始任何重大更改之前先测试并使网站正常工作。

    这样做是否正确?如果不是我们错过了什么?是否有其他解决方法可以访问这些文件。

1 个答案:

答案 0 :(得分:0)

你的策略应该是好的。

您可能希望在测试环境中检查一些内容。

将CFIDE虚拟目录添加到站点(从cfadmin中删除全局脚本值),就像以前在CF9上一样,并验证一切是否正常。这将保证缺少CFIDE虚拟目录确实是问题。

尝试将scriptSrc属性添加到< cfform>标记并查看是否有效。

如果缺少CFIDE虚拟目录,则可能需要考虑实施这样的解决方案。

  1. 将完整的CFIDE文件夹{cfusionroot} \ cfusion \ wwwroot \ CFIDE复制到新文件夹。它可以在{cfusionroot}文件夹结构之外。
  2. 从新的CFIDE文件夹中删除所有“不安全”文件夹,基本上保留脚本文件夹。
  3. 将此新的安全文件夹添加为CFIDE虚拟目录。
  4. 使用此解决方案可避免更改您的cfadmin设置或所有< cfform>标记和设置scriptSrc属性,因为CFIDE虚拟目录与/ cfide / scripts文件夹一起存在。

    这应该是安全的,因为/ cfide / adminapi,/ cfide / administrator等将从您的CFIDE虚拟目录副本中删除。

    在浏览器上使用F12网络流量选项,以确保所有请求的状态为200(成功)。脚本请求应该在那里。