Coldfusion 根目录外的Coldbox导致两个应用程序中的同名侦听器冲突

Coldfusion 根目录外的Coldbox导致两个应用程序中的同名侦听器冲突,coldfusion,interceptor,coldbox,Coldfusion,Interceptor,Coldbox,我有两个应用程序在服务器上并发运行,coldbox与每个应用程序根文件夹处于相同的文件夹级别 它们都调用名为authenticate.cfc的拦截器,但app1的authenticate.cfc的代码与app2的authenticate.cfc的代码不同 app1工作正常,app2给出了一个错误,显然是在使用app1的authenticate.cfc拦截器 我重新启动服务器,尝试app2,它工作正常,然后转到app1,它给出了一个错误,因为它正在尝试app2的同名拦截器 我尝试过不继承遗产,但它

我有两个应用程序在服务器上并发运行,coldbox与每个应用程序根文件夹处于相同的文件夹级别

它们都调用名为authenticate.cfc的拦截器,但app1的authenticate.cfc的代码与app2的authenticate.cfc的代码不同

app1工作正常,app2给出了一个错误,显然是在使用app1的authenticate.cfc拦截器

我重新启动服务器,尝试app2,它工作正常,然后转到app1,它给出了一个错误,因为它正在尝试app2的同名拦截器

我尝试过不继承遗产,但它似乎不起作用……为什么会发生这种情况

根据错误报告,CF_TEMPLATEPROXY总是以正确的路径D:\apps\app1\Application.cfc correct启动

然后,对于UDF,访问coldbox.system.coldbox;对于interceptorstate.cfc,访问Templateproxy


然后调用的最后一个操作是CF_CFPage,它现在引用了错误的目录D:\apps\app2\interceptors\authenticate.cfc

组件缓存是问题所在,必须在coldbox与应用程序根文件夹位于同一级别的设置中关闭它


组件缓存是问题所在,必须在coldbox与应用程序根文件夹位于同一级别的设置中关闭组件缓存


应用程序是否对
This.Name
(在Application.cfc中)和
Coldbox.AppName
(在config/Coldbox.cfc中)有不同的值?它们有不同的名称,组件缓存是问题所在。应用程序对
This.Name
(在Application.cfc中)和
Coldbox.AppName
(在config/Coldbox.cfc中)有不同的值?它们有单独的名称,组件缓存是问题。要清楚,问题与ColdBox或文件位置无关。当同一服务器上的两个ColdFusion应用程序之间使用相同的组件路径时,必须关闭组件缓存。这是因为代码只是指
拦截器。验证
,CF是基于该值缓存对象,而不是在应用程序的上下文中对其进行评估?另一种解决方案是设置每个应用程序的映射,并参考
app1.interceptors.authenticate
app2.interceptors.authenticate
?(使用适当的
COLDBOX\u APP\u MAPPING
值)@PeterBoughton我正是这样尝试的,但仍然遇到了同样的问题,尽管可能是由于组件缓存未被清除(我无法访问测试环境中的服务器管理员)而无法清除,这个问题与ColdBox或文件的位置无关。当同一服务器上的两个ColdFusion应用程序之间使用相同的组件路径时,必须关闭组件缓存。这是因为代码只是指
拦截器。验证
,CF是基于该值缓存对象,而不是在应用程序的上下文中对其进行评估?另一种解决方案是设置每个应用程序的映射,并参考
app1.interceptors.authenticate
app2.interceptors.authenticate
?(使用适当的
COLDBOX\u APP\u MAPPING
值)@PeterBoughton我正是这样做的,但仍然遇到同样的问题,尽管这可能是由于组件缓存未被清除(我无法访问测试环境中的服务器管理员)