2012-07-06 78 views
3

我想知道如何在我的网站非wordpress和我的wordpress博客上分享同一个域名www.mysite.com上的会话,以便当用户登录到我的网站他也登录到在我的网站和wordpress博客之间分享会话

我安装的WordPress作为子目录我网站上的博客,网址为我的网站是www.mysite.com,我访问WordPress的这样www.mysite.com/wordpressBlog

在我在我的主站点user_login.php我激活

session_start();

激活饼干和我的wordpress wp_unregister_GLOBALS()我加

$ no_unset =阵列( '_ SESSION',...

但没有发生,当我登录到我的主站点我仍然需要登录到博客

事实上,我的网站和WordPress的博客是在同一个域名。我安装wordpress作为我的网站的子目录我的网站的网址是www.my site.com和我访问WordPress的这样www.mysite.com/wordpressBlog在我user_login.php在我的主网站我激活

session_start(); 

激活饼干和我的wordpress wp_unregister_GLOBALS()我加$ no_unset =阵列(“_ SESSION”,...

但没有发生,当我登录到我的主网站,我仍然要登录到博客

回答

3

为了能够到两个站点之间共享会话cookie,他们将不得不在相同的域名下运行(例如, mysite.com)。以下将是一个有效的配置,如果会话cookie有mysite.com

www.mysite.com 
blog.mysite.com 

PS的范围。我不建议使用交叉脚本黑客来解决这个领域范围问题。由于安全原因,它仅限于域名。

[编辑]

我还要指出的是,它是完全有效的有你的两个sub-domains (sites) hosted on different servers

[编辑]

这是很难提供一个简洁的回答,因为你的问题您正在使用非WP网站。我最好给你的建议是发布WordPress StackExchange,你可能会得到一个曾经完成这个配置的人。

我相信你的问题是围绕你的Cookie的范围从WP。 Editing your wp-config.php and setting the COOKIE_DOMAIN使用“”可能有助于您的问题,如this WordPress StackExchange post所述。

有些帖子说完全删除这个settign。在任何情况下,您都需要一种方法来调试HTTP会话,以查看使用哪个范围发送的cookie,这就是我推荐FireBug的原因。无论如何,您仍然需要重新编写您的非WP网站以识别WP Cookie,因此了解发生的事情非常重要。

我没碰到过关于Multisite Domain Mapping可能与你的知识帮助这个其他职位,但这就涉及到WP网站只所以不正是你需要的。

+0

我同意@brad 如果不在同一个域中,也没本事。有可能将用户名与远程SQL同步:) – 2012-07-06 08:59:38

+0

它是否也适用于通用网络应用或者是否有其他方法来实现此目的? @SeeBeen你是什么意思whith“远程SQL”? – davioooh 2012-07-06 09:02:54

+0

会话cookie可以被同一个域上的任何web应用共享。 通过远程SQL,我的意思是你可以从你的网站上的WP博客数据框中提取WP用户信息。 但是,如果它是在同一个域,您可以在本地拉必要的信息,没有远程SQL – 2012-07-06 09:06:46