我想知道如何在同一个域www.mysite.com上分享我的网站non-wordpress和我的wordpress博客之间的会话,这样当用户登录我的网站时,他也登录了博客
我在我的网站上安装了wordpress作为子目录,我网站的网址是www.mysite.com,我访问wordpress就像这样www.mysite.com/wordpressBlog
在我的主网站上的user_login.php中,我已激活
在session_start();
激活cookie并在我的wordpress上wp_unregister_GLOBALS()我添加了
$ no_unset = array('_SESSION',...
但没有任何反应,当我登录我的主站点时,我仍然需要登录博客
事实上,我的网站和wordpress博客在同一个域上。我在我的网站上安装了wordpress作为子目录url我的网站是www.mysite.com我访问wordpress就像这样www.mysite.com/wordpressBlog在我的主网站上的user_login.php中我激活了
session_start();
激活cookie并在我的wordpress上wp_unregister_GLOBALS()我添加了$ no_unset = array('_SESSION',...
但没有任何反应,当我登录我的主站点时,我仍然需要登录博客
答案 0 :(得分:3)
为了能够在两个站点之间共享会话cookie,它们必须在相同的域名下运行(例如mysite.com)。如果会话cookie的范围为mysite.com
www.mysite.com
blog.mysite.com
PS。我不建议使用Cross Scripting hacks来解决这个域范围问题。出于安全原因,它仅限于域名。
[编辑]
我还应该指出,拥有两个sub-domains (sites) hosted on different servers
是完全有效的[编辑]
由于您使用的是非WP网站,因此很难为您的问题提供简洁的答案。我最好的建议是在WordPress StackExchange张贴你可能会得到之前完成此配置的人。
我相信您的问题集中在您的Cookie的范围内。 Editing your wp-config.php and setting the COOKIE_DOMAIN使用“{}可以帮助解决this WordPress StackExchange post提及的问题。
有些帖子谈到完全删除此设置。在任何情况下,您都需要一种方法来调试HTTP会话以查看使用哪个范围发送的cookie,这就是我推荐FireBug的原因。在任何情况下,您仍然需要重新编码非WP网站以识别WP cookie,因此了解正在发生的事情非常重要。
我确实遇到了关于Multisite Domain Mapping的其他帖子,这可能有助于您的知识,但这只涉及WP网站,所以不完全是您需要的。