将指定站点的cookie保存到我的服务器上的文件中

时间:2013-03-21 21:19:21

标签: php javascript cookies

对于我的例子,我将使用这些变量:

  • 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做任何方式吗?!

此致

3 个答案:

答案 0 :(得分:1)

如果两个站点都属于您,并且您可以访问两个站点上的服务器端代码,那么您可以让第一台服务器使用服务器到服务器通信将cookie转发到第二台服务器。

浏览器中内置的“相同来源”保护试图阻止您从纯客户端代码(不涉及两个服务器)执行您想要执行的操作。

这是因为当您的网页位于Cookie所属的域时,您只能检索Cookie。而且,您只能将cookie(使用ajax)发送到与该页面相同的域中的服务器。因此,您无法将一个域的cookie发送到另一台服务器。这是一个明显的安全违规,浏览器打算阻止它的“同源”保护。您可以阅读有关这些保护措施here

如果您拥有来自第一个站点的协作服务器,您可以让该服务器在将cookie与原始页面请求一起发送时检索该cookie,然后该服务器可以使用server-to将cookie发送到您的第二个站点 - 服务器通信。如果第一个域不属于您,您可以在其中修改服务器端代码,那么显然您无法在该服务器上运行代码来执行此操作。

答案 1 :(得分:0)

没有办法做到这一点,因为这将是法官的安全缺陷。

想象一下,如果我创建了一个保存所有PHPSESSID的网站,我可以在许多网站上访问您的个人资料......

答案 2 :(得分:0)

这些是很少的选择。虽然不是最好的。一些通常的指示,让你开始:

一个。您还可以考虑设置VPN。这会将两台服务器的IPS列入白名单。

  1. 您可以创建包含Cookie信息的REST API(不公开)!!
  2. 在App1上提供您的Cookie数据;
  3. 使您的Cookie可用作可通过请求/响应对象提供的Cookie对象
  4. 使用“同源”政策;你可以让app2与app1交谈