coldfusion - 两个 ColdFusion 应用程序的冲突映射

标签 coldfusion relative-path

我花了一天多的时间试图解决一个问题,即两个应用程序使用相同的相对路径但位于不同的“根”下,这会导致其中一个应用程序访问错误的代码库。

这些是我对这两个应用程序的根源:

  • \www\客户\
  • \www\其他\客户\

  • 结构
    ..www 
    ....Clients 
    ......Application.cfc 
    ....Other 
    ......Clients 
    ........Application.cfc
    

    在两个应用程序中都有引用相对路径的代码(例如,/clients/content/login.cfm)

    我注意到 ColdFusion 管理员有一个 Mappings 部分,其中第一个映射有一个逻辑路径 /映射到目录路径 D:/www/ .

    这适用于自 clients 以来的第一个应用程序文件夹直接位于 www 下文件夹,但是第二个应用程序无法正常工作,因为它也遵循相同的映射。因此,而不是搜索 /clients/content/login.cfmOthers文件夹,它再次在 www 下搜索文件夹。

    注意:两个应用程序具有不同的 Application.Name所以他们确实是隔离的。

    最大的危险信号是我们在旧的 ColdFusion 9 服务器上没有遇到这个问题,但是我们在较新的 ColdFusion 2016 服务器上遇到了这个问题。

    通过 ColdFusion Administrator 进行筛选,我似乎找不到任何其他可能影响每个应用程序的基础根的设置,这些设置可能优先于映射。

    有没有我错过的设置? ColdFusion 9 和 ColdFusion 2016 之间的相对路径或映射是否有显着变化?

    最佳答案

    Sifting through ColdFusion Administrator, I can't seem to find any other settings which could affect the underlying root per Application which could take precedence over the Mappings.



    解决方案:使用特定于应用程序的映射。
    <cfset this.mappings["/Clients"] = GetDirectoryFromPath(GetCurrentTemplatePath())>
    

    Source

    关于coldfusion - 两个 ColdFusion 应用程序的冲突映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43350606/

    相关文章:

    path - 如何在 Doxygen 配置中使用相对路径名

    javascript - jQuery 无法使用相对路径

    javascript - AngularJS:绝对路径与相对路径

    sql - ColdFusion 查询 - 注入(inject)保护

    coldfusion findNoCase 不工作

    java - Jmeter在用户定义变量中设置相对于Jmeter安装的相对路径

    php - 不同驱动器中文件的路径?

    coldfusion - 在 CFBuilder 中创建服务器后 RDS 发生故障

    apache-flex - 如何在应用程序级别进行冷融合映射

    java - cfhttp 问题,因为它非常慢,尝试替代方案