我有一台服务器,我使用dokuwiki来托管主页和wiki。服务器位于www.domain.com
下,维基位于wiki.domain.com
下。在内部,两个子域都来自不同的目录。
但是,这意味着,每个想要注册的人都必须注册这两个域并为两个子域管理一组重复的用户帐户。
我想要的是拥有一个系统,任何人都可以在这两个页面上注册,只需登录任何域并获取访问权限。对于这两个域,仍应单独管理ACL,因为我可能多次使用命名空间名称。
我查看了dokuwiki auth插件的列表,但我无法找到任何有用的用于此目的。另一个想法是在两个安装中对auth数据目录进行软链接或硬链接。但是,这仍然意味着用户必须多次登录。此外,我不确定我的主机是否真的允许这样的目录链接,或者这可能会搞砸这两个安装。
有没有其他方法可以创建这样的设置?
答案 0 :(得分:5)
DokuWiki farm setup可能有助于为两个站点提供相同的用户数据库。 Symlinking用户文件是另一种方式。
更复杂的是在两个域之间共享cookie。我不确定如何做到最好。也许其他人可以提供一些想法。
答案 1 :(得分:0)
好吧,因为它位于您的各个子域中的同一服务器上,我想您会想要将用户信息(包括登录)存储在共享数据库中,这样无论您在哪个应用程序/子域中插入其注册数据并查询其来自同一数据库的登录信息。然后,使用PHP会话来跟踪它们是否跨子域登录是一个问题。关于如何实现这一目标已有一个长度堆栈:
答案 2 :(得分:0)
尝试将Cookie域设置为.yourdomain.com 这意味着您的浏览器会将cookie发送到yourdomain.com的子域。
所以cookies将在www.yourdomain.com和wiki.yourdomain.com
之间共享