希望有人在这里知道ColdFusion,而且,可能知道发生了什么。
<cfscript>
sz_test1=ExpandPath("/app/folder/afternoon.jpg");
sz_test2=ExpandPath("app/folder/afternoon.jpg");
WriteOutput(sz_test1&"<br />");
WriteOutput(sz_test2&"<br />");
abort;
</cfscript>
简单的代码,只需输出ExpandPath()结果。
运行ColdFusion 11的网站会根据一天中的时间将图像打印到页面。 简单的页面,如果它在下午,你得到下午.jpg,否则morning.jpg。 ExpandPath是必需的,因为我们实际上将页面内容输出到pdf(cfdocument + cfimage),这对于这个问题的目的并不重要。但是让你知道,没有人建议不使用ExpandPath作为解决方案..
在这个页面上,就在5分钟前,变量 sz_test1 的结果将返回ColdFusion路径。不是Web根路径。
C:\Coldfusion11\CFIDE\app\folder\afternoon.jpg
而 sz_test2 会给出:
C:\inetpub\wwwroot\app\folder\afternoon.jpg
因此,第一种情况下文件并不存在。 但是现在,突然之间,ColdFusion不再这样做了。两个测试都返回完全相同的结果。这种情况一直在发生(持续不一致的结果),持续数周。
任何人都知道什么会导致ExpandPath()函数:
答案 0 :(得分:1)
您可能想尝试使用 thisPath = getDirectoryFromPath(getCurrentTemplatePath); thisFile =&#34;#thisPath#/文件夹/ afternoon.jpg&#34 ;;
它有点笨重但可能会摆脱不一致的行为。