如何为多域站点分别处理身份验证?

问题描述

我需要一些有关多域身份验证的说明。我有一个网站,例如www.example.com,它使用sys_folder id = 25,它具有自己的用户和组。现在,我使用站点配置www.example.com/mycompany创建了另一个域,该域使用另一个sys_folder id =50。两个域都具有带有不同存储文件夹的felogin。在登录失败时它可以正常工作。但是,当我登录自己的主要网站时,请说www.example.com。它自动登录到其他域www.example.com/mycompany,其中显示了我的fe_users详细信息。如何分别针对域进行身份验证? TYPO3支持吗?

解决方法

这是一个普遍的问题,与TYPO3并没有真正的关系:登录www.example.com时,cookie路径将为/。它不能是其他任何东西,因为它将限于该路径。

因此,当您进入类似www.example.com/mycompany的子站点时,由于www.example.com/mycompany路径覆盖,因此发送了/的cookie。有关详细信息,请参见Set-Cookie: Wildcard "Path"

此处的正确解决方案只能是使用子域来分隔站点,例如mycompany.example.comwww.example.com。然后,每个站点都将其域存储在cookie中,以确保每个站点仅使用正确的cookie。

请注意,在这种情况下,主站点必须类似于www.example.com,而不仅仅是example.com,否则会出现相同的问题:在{ {1}}将发送到example.com和所有其他子域。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...