我先把要跨的域的情况交代清楚:(一个例子啊!!!)
http://www.a.com为主域
还有好多的子域,如http://bbs.a.com http://mail.a.com http://blog.a.com ...........
要实现的是在其中一个域上登录后,在其它的域也是登录状态,声明这些域中都是用PHP写的动态页面,并且用的是session来传值的。对于跨域我了解的一些情况如下:
一,网上多数说可以用cookie来实现,但是cookie的安全性不如session,但又说session不能跨域。
二,用iframe,我试过数据可以传过来,但是在控制iframe的高度又遇到问题了,因为iframe的src="http://www.a.com/xxx.php?id=100"是个动态的页面,想让iframe的高度随着http://www.a.com/xxx.php页的高度来变化,找了好长时间,找到一种“用剪贴板实现跨域iframe高度自适应”的方法,但是这种方法只适用于IE浏览器,而且有个不足之处:就是遇到一些安全性较好的操作系统(如:win2003)会弹出“是否允许从剪切板上粘贴内容”的对话框。,最终这种方法只适合IE浏览器,用其它浏览器就不行了。还待解决中.......高手们:还有什么方法吗?或者如果是以上的方法怎么做更完美呢?我们一起讨论一下啊!!!!!积极参与啊!!!!!
http://www.a.com为主域
还有好多的子域,如http://bbs.a.com http://mail.a.com http://blog.a.com ...........
要实现的是在其中一个域上登录后,在其它的域也是登录状态,声明这些域中都是用PHP写的动态页面,并且用的是session来传值的。对于跨域我了解的一些情况如下:
一,网上多数说可以用cookie来实现,但是cookie的安全性不如session,但又说session不能跨域。
二,用iframe,我试过数据可以传过来,但是在控制iframe的高度又遇到问题了,因为iframe的src="http://www.a.com/xxx.php?id=100"是个动态的页面,想让iframe的高度随着http://www.a.com/xxx.php页的高度来变化,找了好长时间,找到一种“用剪贴板实现跨域iframe高度自适应”的方法,但是这种方法只适用于IE浏览器,而且有个不足之处:就是遇到一些安全性较好的操作系统(如:win2003)会弹出“是否允许从剪切板上粘贴内容”的对话框。,最终这种方法只适合IE浏览器,用其它浏览器就不行了。还待解决中.......高手们:还有什么方法吗?或者如果是以上的方法怎么做更完美呢?我们一起讨论一下啊!!!!!积极参与啊!!!!!
说详细点,怎么用memcache共享呢?对这方面我还不了解!!!
说详细点,怎么来实现?我对memcache还不了解!!!请教一下!!
session_set_cookie_params ( int $lifetime [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]] )
第三个参数指定为.a.com即可。至于楼上几位说的memcache和数据库,只是session的后端存储实现不一样而已,和跨域完全没关系。
我也见过别人说要session数据库共享,最新买的一本杜江先生的书,说的也是数据库共享的办法!显然对于跨子域的来说,有一定的误导性!如果session是用cookie机制的,这个办法可以!但如果sessionid是get传递的,是否还有跨域的问题? 不知老兄有何见解!还有的说 是如果是跨不同的域名,如何解决,请教一下了!
$domain没为.a.com或在配置文件里设
我看了一下,把php.ini修改成session.cookie_domain=".a.com"就可以了,是吗?
等年后来了,把服务器上的配置文件改过来,看看是否行得通.先谢谢喽! ‘~’
我看了一下,把php.ini修改成session.cookie_domain=".a.com"就可以了,是吗?
等年后来了,把服务器上的配置文件改过来,看看是否行得通.先谢谢喽! ‘~’
本域和子域的相互访问: www.aa.com和book.aa.com
解决方法:如果想做到数据的交互,那么www.aa.com和book.aa.com必须由你来开发才可以。可以将book.aa.com用iframe添加到 www.aa.com的某个页面下,在www.aa.com和iframe里面都加上document.domain = "aa.com",这样就可以统一域了,可以实现跨域访问。就和平时同一个域中镶嵌iframe一样,直接调用里面的JS就可以了。(这个办法我没有尝试,不过理论可行)这种方法我试过了,就像我贴子中说的那样,iframe的高度不能自适应,对它的高度您有什么见解啊?????
完全跨域没做过,有好的解决方案或原理吗?看过别人分析discuz的文章,意思是一个是如果一个登录,同时了登录另一个,如果一个退出,同时也退出另一个,如果一个过期,同时另一个也过期,这个可解决登录退出问题,但没说session是否也能共享?
特别是要高效的情况下在我做的一个portal系统中
使用SOAP + SSO Server,以后台的方式进行登录同步
但在注销方面暂时不太满意
因为一个portal中随时有过百个应用
注销效率的问题很烦人...