好的,所以在我正在研究的coldfusion网站上,我刚安装了一个名为“Galleon”的第三方(开源)CF论坛。
我之前问了一个类似的问题,但现在我们已经取得了一些进展。
手头的问题是,它不会识别父网站本身存在的任何变量(会话等)。论坛本身存储在站点目录中的子文件夹中。但是当我们尝试输出会话变量时,我们知道这些变量没有过期或者诸如此类,它会发出错误并且无法识别它们。
我扫描了任何可以清除变量的东西(比如structclear(session)等)并且没有多少出现..在application.cfm中是否有某种设置我应该知道?
一般来说,如何在CF上进行跨应用程序身份验证?
我们要做的是根据用户登录主站点时创建的现有session.userid变量填充新的会话变量。我们想要这样,所以我们可以绕过不得不要求他们再次登录Galleon论坛(以及由此引起的所有复杂情况)。
答案 0 :(得分:3)
在论坛的Application.cfc中,你很可能需要扩展根Application.cfc。然后你将更新论坛的onApplicationStart(),然后再调用super.onApplicationStart()
。对于每个Application.cfc函数,情况也是如此,具体取决于父Application.cfc中发生的情况。
Galleon的Application.cfc将不再需要在父Application.cfc中设置应用程序名称和其他变量(如@Ben所述)。
答案 1 :(得分:2)
确保两个应用程序之间的application.cfms / application.cfc中的应用程序名称相同,否则它们将不会共享相同的会话/应用程序数据。
快速扫描应用程序之间可能存在的变量冲突,例如“session.user”等。