对于我的例子,我将使用这些变量:
first_site.com =我的网站,我将执行cookie get命令
specified_site.com =我的第二个网站,客户端已登录
my_server.com =我的服务器地址,我有一个PHP脚本来处理收到的数据
用户已连接到first_site.com和specified_site.com
我希望从“first_site.com”获取Cookie并将其保存到“my_server.com”
用php或javascript做任何方式吗?!
此致
答案 0 :(得分:1)
如果两个站点都属于您,并且您可以访问两个站点上的服务器端代码,那么您可以让第一台服务器使用服务器到服务器通信将cookie转发到第二台服务器。
浏览器中内置的“相同来源”保护试图阻止您从纯客户端代码(不涉及两个服务器)执行您想要执行的操作。
这是因为当您的网页位于Cookie所属的域时,您只能检索Cookie。而且,您只能将cookie(使用ajax)发送到与该页面相同的域中的服务器。因此,您无法将一个域的cookie发送到另一台服务器。这是一个明显的安全违规,浏览器打算阻止它的“同源”保护。您可以阅读有关这些保护措施here。
如果您拥有来自第一个站点的协作服务器,您可以让该服务器在将cookie与原始页面请求一起发送时检索该cookie,然后该服务器可以使用server-to将cookie发送到您的第二个站点 - 服务器通信。如果第一个域不属于您,您可以在其中修改服务器端代码,那么显然您无法在该服务器上运行代码来执行此操作。
答案 1 :(得分:0)
没有办法做到这一点,因为这将是法官的安全缺陷。
想象一下,如果我创建了一个保存所有PHPSESSID的网站,我可以在许多网站上访问您的个人资料......
答案 2 :(得分:0)
这些是很少的选择。虽然不是最好的。一些通常的指示,让你开始:
一个。您还可以考虑设置VPN。这会将两台服务器的IPS列入白名单。