本文是關於在同一臺服務器下安裝多個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的值就行了,就不用修改這麼多文件了。