跨二级域的实现非常简单,可以设置Cookie的domain来使子站拥有主站的SESSIONID,从而实现SESSION的共享,这种技术有局限性,那就是只能在一个域名下使用,我这边也已经完美实现。这里主要讲的是不同网站之间的SESSION共享。比如www.a.com和www.b.com两个或者多个不同主域的SESSION共享,实现多种类型的网站的登录和退出,当然该技术也完全可以实现二级域SESSION的共享功能。
实现效果如下图所示:
注意看,主站是.cn的域名,从站是.com的域名,完全不同,但是可以看到主站和从站的SESSION的内容完全一样,主站SESSION变更的时候,从站也会立即变更。数据都是在服务器上存储的,不需要添加任何JavaScript,不需要做加密字符串,不依赖任何系统架构(QQ:303313719)。
在需要改造为共享SESSION的站只修改Global.asax一个文件,在主站只添加一个SESSION同步的空白页面即可。由此技术也可以扩展为多种语言的SESSION共享,比如Java和.net间的SESSION共享,PHP和.net间的SESSION共享,.net不同程序间的SESSION共享,Java不同程序间的SESSION共享,PHP不同程序间的SESSION共享。任何程序间的SESSION共享都是没有问题的,可以根据相关需求进行定制(QQ:303313719)。
这里需要注意的是,做成共享SESSION之后,就只能在主站做登录和退出操作。还有就是如果没有同步SESSION,页面会在第一次打开的时候做一下反弹跳转(跳转到主站,然后再反弹到当前页面),二级域的SESSION共享则没有这个现象,如果考虑SEO方面,可以定制为只在特定的网址上做SESSION同步即可。
最新评论