每个应用程序映射的Coldfusion随机失败

时间:2019-03-11 11:35:43

标签: coldfusion mapping coldfusion-2018

在我的application.cfc文件中,我有以下代码:

this.mappings["/includes"] = "#expandPath('../../priv/inc/')#";

,然后在页面上设置以下CF包含项:

<cfinclude template="/includes/imageOptimise-thumbnail.cfm">

在提交页面的大部分时间里,imageOptimise-thumbnail页面运行没有任何问题,但是偶尔会出现错误,提示它找不到imageOptimise-thumbnail.cfm。如果我重新提交页面,可能会起作用,但问题是,为什么有时无法找到该页面?

我查看了CF管理员,但在日志中看不到任何内容,指出存在错误,但是当失败时,它显然显示了Coldfusion'找不到模板'错误消息。

有人有什么主意吗?

1 个答案:

答案 0 :(得分:5)

我认为您的问题源于用于映射的路径是相对的事实。

根据ColdFusion Mappings and Relative Paths中的建议,

  

故事的寓意是永远不要使用expandPath()创建一个   相对于Webroot的映射。

尝试按照博客的建议使webroot保持静态

<cfset this.mappings["/myapplication"] =getDirectoryFromPath(getCurrentTemplatePath())

并从Webroot导航到/priv/inc/

相关问题