同一臺服務器下安裝多個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
相關文章
相關標籤/搜索