我已在同一台和不同服务器上为子域实施单点登录(SSO)。
使用以下技术:
session_name('example');
session_set_cookie_params(0, '/', '.example.com');
session_start();
d1.example.com on SERVER1
d2.example.com on SERVER1
d3.example.com on SERVER2
这成功了。
要在SERVER2上为子域d3.example.com创建会话,我使用curl来调用该服务器上的页面
但是现在我向SERVER2添加了另一个域名www.different.com,所有数据,用户,服务和代码都是从example.com共享的,但它不是子域名。
我为这个新域(www.different.com)尝试了相同的cURL登录技术,但未能登录www.different.com。虽然用户显示已登录所有其他网站。
由于www.different.com不是example.com的子域名,因此不会为此站点编写cookie(即session_set_cookie_params(0,'/','。example.com');)。
我想知道是否有任何解决方案需要最少的更改,因为有18个子域正在处理上述场景。改变所有这些是非常乏味的。