同一台服务器下安装多个ECSHop的解决方法

本文是关于在同一台服务器下安装多个ECShop会登录冲突的问题。
在配置文件里面设置$cookie_path , $cookie_domain, 参数都没有效果。
 
如今把找到的一个解决方法和你们分享一下
 
找到其中一个ECShop的 目录,能够用Editplus,用“在 文件中查找” 功能
搜索"new cls_session"
在搜到的结果中,把该行的第三个参数设为不一样的值就能够了
1,includes/init.php                           // 前台
2,api/init.php                                  //前台,用于集成UCenter同步登录的
3,api/client/includes/init.php            
4,admin/includes/init.php                 // 后台 管理员
5,includes/fckeditor/editor/filemanager/connectors/php/config.php  //后台 管理员,上传图片的
6,wap/includes/init.php   //wap的,通常用不到

其中1,2要设同样,4,5要同样,但先后台要不同
就是要设置三个不同的值,1,2一个值,3一个值,4,5一个值
默认参数是'ECS_ID',好比文件1里面第三个参数空缺,填上一个本身设定的值就行了,好比:
  $sess = new cls_session($db, $ecs->table('sessions'), $ecs->table('sessions_data'), 'ECS_ID2');

再说集成UCenter:
按照UCenter的工做原理,其实只要两个ECShop登录不互相冲突就不要紧,各自按照日常的方法集成就能够了。和它们都是ECShop这件事没有关系。
不过若是你的 模板的登录框是ajax模式的话,要注意看一下libaray/page_header.lbi里面是否是有这一行 代码
  <div id="append_parent"></div>
或者在其余地方也行,当时必定要保证ajax登录的当前 页面里面有这个div
有些 官方的模板里面貌似也没有的
这样才能保证你登录的时候,其余集成的网站也同步登录。
 
ps:
若是ECShop官方能配置这些session_name的值就行了,就不用修改这么多文件了。
若是如今就能经过某种配置方法实现,敬请告知 yanyufei@gmail.com
相关文章
相关标签/搜索