简单修改,让多个帝国cms网站共用会员数据,实现统一登录注册

有时我们会使用帝国cms制作多个网站,会想让所有网站使用一套会员系统,这样对于我们的管理更加方便。

首先,假设我们有“A网站”、“B网站”、“C网站”

安装系统的数据库名分别为“adb”、“bdb”、“cdb”;

使用的域名分别为“a.phome.net”、“b.phome.net”、“c.phome.net”。

操作步骤:

一、首先我们把A网站的会员数据表作为所有网站的公共会员表。

会员数据表的表名是:adb.phome_enewsmember

(这里一定要带上数据库名作为前缀)

二、修改所有网站会员配置文件( /e/class/user.php ),把会员表名全部改成公共会员表名“adb.phome_enewsmember”。

我们打开 /e/class/user.php 文件,搜索下面的代码:

折叠PHP 代码
  1. $user_tablename="{$user_tbpre}enewsmember";               //用户表  

替换为

折叠PHP 代码
  1. $user_tablename="adb.phome_enewsmember";               //用户表  

三、接下来,我们需要修改cookie的作用域,设置统一的COOKIE信息可以实现同步登录与退出,修改如下:

搜索:

折叠PHP 代码
  1. $phome_cookiedomain='';                //cookie作用域  

修改为:

折叠PHP 代码
  1. $phome_cookiedomain='.phome.net';                //cookie作用域  

然后修改cookie前缀

折叠PHP 代码
  1. $phome_cookievarpre='ecms';                //前台cookie变量前缀  

三个网站的cookie前缀必须一致。

这样我们就可以实现会员同步登陆、退出、注册了。这里大家可能注意到了一个问题,就是cookie作用域,我们只能填主域名,也就是几个网站只能用子域名来访问才能实现同步登入登出,如果主域名不同,也就没办法实现了。不过这不影响几个网站共用会员数据。

Tags: 会员   同步
cms大学,为帝国cms用户提供动力
Copyright © 2016 CmsDX.com All Rights Reserved.