3

首先,我对会话 cookie、joomla 会话和登录进行了大量阅读,但我似乎没有找到解决方案,或者至少不明白它是如何工作的。

我有三个 joomla 网站,其中一个是主域,其余是子域。

当我登录到我的主域时,我希望能够自动登录到我的子域。

到目前为止,我已经完成了以下工作,

所有三个网站都共享用户信息表(用户、组、访问级别)。它们共享相同的秘密值。这三个网站中的 cookie 域都是 .domain.com。

但是当我登录到我的主站点时,我似乎没有登录到子域。我尝试共享会话表但没有成功。

我在这里想念什么?

Ps - 我尝试过 jfusion,它可以工作,但我对这个功能不满意,因为我没有看到使用 curl 在子域中提交表单的意义。我使用了 jms2win 的多站点 SSO 插件。它基本上设计用于在不同的域上工作,而不是在子域之间工作。在我的情况下它也不起作用。

谢谢。

4

1 回答 1

1

共享用户和会话很容易,如果您使用数据库在站点之间共享用户和会话表,您将能够使用相同的域进行操作,但对于不同的域,有时甚至是子域,这是不可能的。为什么?因为浏览器 cookie:您只能从同一域或顶级域读取 cookie(例如从 sub.domain.com 读取来自 domain.com 的 cookie)。

最后,您需要采取一些变通方法来解决此限制。这就是为什么你需要使用一些外部插件(就像你提到的这些),或者使用一些类似的策略来解决 cookie 问题。

这不是关于特别的 Joomla,而是关于浏览器的工作方式。

于 2013-06-02T04:18:59.800 回答