php获取另一台服务器设置的cookie
我知道我在问如何获得跨域cookie,这在传统上是不可能的,但我们有两个服务器php获取另一台服务器设置的cookie,php,Php,我知道我在问如何获得跨域cookie,这在传统上是不可能的,但我们有两个服务器site1.domain.com和site2.domain.com,我们有一个基于cookie的SSO,在公司决定将site2.domain.com移动到一个完全独立的服务器之前,它一直运行良好不同的领域。现在的问题是,当有人登录到site1.domain.com时,我们为.domain.com设置了一个cookie。 我想检查是否有来自domain2.com的cookie,这是第二台服务器的新域 我尝试了curl调用
site1.domain.com
和site2.domain.com
,我们有一个基于cookie的SSO,在公司决定将site2.domain.com
移动到一个完全独立的服务器之前,它一直运行良好不同的领域。现在的问题是,当有人登录到site1.domain.com
时,我们为.domain.com设置了一个cookie。
我想检查是否有来自domain2.com
的cookie,这是第二台服务器的新域
我尝试了curl调用一个名为getCookie.php的页面,该页面只获取cookie并发送响应,但是curl启动了一个全新的会话,并不假装是浏览site2.domain2.com的用户
有没有办法,我可以从site2读取cookie值?非常感谢您的帮助。JSONP
从site1.domain.com加载一个“JS文件”,并将请求的cookie信息作为json返回
编辑
site1.domain.com/getCookie.php
<?php
header('Content-Type: application/x-javascript');
echo 'callback('.json_encode($_COOKIE).');';
?>
并在site2.domain2.com上发布html
<html>
<head>
<script >function callback(data) { ... }</script>
<script src="site1.domain.com/getCookie.php" type="text/javascript"></script>
...
函数回调(数据){…}
...
您可以在上找到更多信息,也许嵌入iframe会有所帮助?如果您可以控制两台服务器,您也可以使用API调用将一些内容组合在一起。这对我来说是新的。。你能给我举个粗略的例子吗?我将非常感谢。您的回调javascript函数需要处理信息并将sso cookie存储在此域中。以下是我在server1上的getCookie.php中尝试的内容,以及我在Server2上的简单html文件。。函数回调(数据){alert(data);}这似乎不起作用。您是否调试了site2站点?这对我来说很有效。老实说,我目前正在研究内部域。但相同来源的策略在这里也应该起作用。我的回答中有一个错误:它是json_encode而不是json_ecode。