整合ecshop和discuz中的一些问题。

之前弄了一个论坛,使用discuz改的。最近需要上一个商城,而且要和论坛整合,因为Ucenter的存在,所以果断使用ecshop。

在网上查了点资料,发现过程很方便,所以就天真的以为几步就可以完成,但没想到的是,麻烦才刚刚开始!惊恐

我用的是最新的discuz3.1版本,ecshop是2.73版。

首先,因为这个版本的discuz自带Ucenter,所以直接把discuz根目录下的uc_client文件夹复制到ecshop的根目录下,暂时不用修改什么,直接复制粘贴即可。

接下来,登陆ecshop的后台,点击“会员整合”菜单。在“ucenter”后点击安装,一步一步导入即可。

完事后,进入discuz后台登陆ucenter,在左边的菜单中选择应用管理,这时ucenter会检测你已安装的应用是否通讯成功,这个问题不大,如果安装配置步骤没什么大问题,都可以显示“通讯成功”。

最后,问题来了,一切就绪后,进入前台登陆,但不管先登陆哪个(ecshop或discuz),都不能做到同步登陆,这意味着只做到了用户资料同步,而不是单点登陆。在接下来的不断测试中,发现如果先登陆ecshop,在登陆成功跳转的页面会提示:Bad request!Your browser sent a request that this server could not understand.无论先登陆哪个应用,再进入另一个的时候都需要再登陆一次。这样的话,整合的作用就损失了至少一半。

目前问题还没解决,网上查了无数解决方案,但貌似没有一个好用的。所以打算解决之后再详细说说方法,如果哪位有这方面的经验,也请不吝赐教。




内容发布系统NetCMS与Discuz论坛整合源码 本代码将NetCMS与Discuz!NT3.1进行注册、登录、退出等功能的整合整合过程如下: 整合环境: 1、NetCMS和Disicuz的架设请参考相关的文档说明,但要注意不要用XP的IIS5.0进行测试,直接用服务器的IIS测试; 2、在VS下直接调试运行NetCMS的登录(user/Logout.aspx)时会出错,最好直接在架设好的环境下测试。 论坛设置: 1、架设好Discuz论坛,打开Discuz论坛系统后台->扩展->通行证设置,通行证的返回地址设置为NetCMS的回调页面地址(此回调页面用于处理CMS的登录退出等功能),如:http://http://netcms.com/api/discuz/apicallback.aspx,此回调页面在源代码的api/discuz/apicallback.aspx下,开发人员可根据需求在这个页面里进行其他的功能处理; 2、打开Discuz论坛系统后台->常规选项->基本设置,找到"身份验证Cookie域"选项,在此填入NetCMS系统的域,如: .netcms.com,注意这项一定要和NetCMS设置里第1条web.config里设置的DNTCookieDomain值一样。 NetCMS设置: 1、在web.config里将<appSettings>配置节里的DNTCookieDomain设置为论坛域,DNTAPIKey,DNTSecert,DNTWebServer修改为在论坛后台扩展设置里获取到的相应值。 2、架设NetCMS,整合就完成了。 整合代码修改说明: 1、引用了DiscuzToolkit插件,用于discuz论坛api接口调用; 2、在API/Discuz目录下添加apicallback.aspx程序页,用于处理论坛回调请求处理; 3、在API/Discuz目录下添加DiscuzSessionHelper.cs,用于实例化论坛API接口; 4、在user/Login.aspx.cs、user/Logout.aspx.cs、user/Register.aspx.cs、user/UserLoginajax.aspx.cs里添加了相应的整合代码; 5、修改了NetCMS源码版本安装初始化数据,首页不能登录和退出等几个bug。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值