2

好的,所以在我正在开发的 Coldfusion 站点上,我刚刚安装了一个名为“Galleon”的第三方(开源)CF 论坛。

我刚才问了一个类似的问题,但现在我们已经取得了一些进展。

手头的问题是它无法识别父站点本身存在的任何变量(会话等)。论坛本身存储在站点目录中的一个子文件夹中。但是当我们尝试输出会话变量时,我们知道这些变量没有过期或诸如此类,它会吐出一个错误并且无法识别它们。

我扫描了任何清除变量的东西(如 structclear(session) 等)并且没有出现太多。我应该注意 application.cfm 中的某种设置吗?

一般来说,您如何在 CF 上进行跨应用程序身份验证?

我们要做的是根据用户登录主站点时创建的现有 session.userid 变量填充一个新的会话变量。我们想要这个,这样我们就可以绕过要求他们再次登录到 Galleon 论坛(以及由此引起的所有并发症)。

4

2 回答 2

3

很有可能在论坛的 Application.cfc 中,您需要扩展根 Application.cfc。然后,您将更新论坛的 onApplicationStart() 以super.onApplicationStart()在其他任何事情之前调用。每个 Application.cfc 函数的情况可能相同,具体取决于父 Application.cfc 中发生的情况。

Galleon 的 Application.cfc 不再需要在父 Application.cfc 中设置应用程序名称和其他变量(如 @Ben 所述)。

于 2012-08-20T21:09:58.743 回答
2

确保两个应用程序之间的 application.cfms/application.cfc 中的应用程序名称相同,否则它们将不会共享相同的会话/应用程序数据。

并快速扫描“session.user”等应用程序之间可能存在的变量冲突。

于 2012-08-20T20:41:46.867 回答