我发现在Lucee中使用CFCHART有一个错误。在CF中也可以使用相同的代码。但在lucee中,它会尝试引用文件夹Lucee中文件graph.cfm。
mytestserver.com/lucee/graph.cfm?img=026f01d7b8c85b891a9c35c102623747&type=png 我需要创建任何映射吗?此映射应该在Lucee管理中还是在IIS中?
发布于 2021-05-25 22:35:18
简短的回答是:不,你不需要在IIS中添加任何额外的映射,也不需要在Lucee或Tomcat中添加任何额外的映射。
我在这里已经看到这个问题太久了,所以我在这里给出一个答案,让我们对Lucee的graph.cfm有所了解。
CFML中的一些标记需要创建额外的图像文件,以便稍后将它们作为内联HTML元素嵌入到重新呈现的输出中。创建此类文件的示例是<cfimage type="captcha" ...>,或者正如您已经在您的问题<cfchart>中指出的那样。
为了实现这样的功能,Lucee需要在某个地方临时创建这些文件,并使它们公开可用。为了在cfimage/cfchar.cfimage中实现这一点,Lucee在你的webroot (通常位于path-to-your-webroot\WEB-INF\lucee\temp\graph )的web context文件夹中创建文件,并将它们嵌入到graph.cfm的链接中。模板graph.cfm只是从该文件夹中读取临时文件,并将其实时交付给您的应用程序。
如果你想看看Lucee最初的graph.cfm,多亏了OpenSource:source of Lucees graph.cfm at github,我们可以偷看一下。
为了使文件和模板graph.cfm暂时公开可用(顺便说一下,它位于WEB-INF文件夹后面(出于安全原因,在Tomcat中默认也是隐藏/阻止的),Lucee必须有一个虚拟映射。但是你不需要设置它,因为默认情况下这些已经设置好了。您可以在下面的图片中看到这一点,该图片取自Lucee Administrator的“映射”-section:

因为Tomcat是一个.cfm文件,所以IIS将通过每个AJP实现的CFML连接器(可能是Boncode连接器)将请求直接重定向到Tomcat。因此,您也不需要在IIS中设置任何映射。
因为您没有提交任何额外的错误信息,比如http错误代码或堆栈跟踪,所以我不知道可能是什么原因导致了您的错误。这也可能是一些不兼容的问题,如果你提交给Lucee核心团队,可能会得到解决。
另一种可能性是,许多安装指南建议您使用IIS URL重写模块锁定"/ Lucee /“路径,因为这也是Lucee Administrator所在的路径。如果是这样,您可以更改IIS重写规则中的设置,并以这样的方式调整规则,使其不会阻止graph.cfm。
同样重要的是要注意,这些cftag中的许多都是作为Lucee扩展(.lex文件)实现的。这些不一定是预先发货或预先安装在Lucee中的,但您可以在Lucee Administrator中安装它,或者从Lucee下载站点获取它们,然后通过Lucee Administrator的“扩展”部分将其上传。
发布于 2022-02-17 15:05:09
我也遇到过这种情况。问题是尽管默认映射仍然不能导航到"graph.cfm“,所以我们添加了一个IIS虚拟映射。
https://stackoverflow.com/questions/55618895
复制相似问题