TYPO3:如何在域之间共享会话/ cookie(每种语言一个)?

时间:2013-05-02 18:40:39

标签: session-cookies typo3 extbase

我想知道是否有办法让TYPO3分享不同域名之间的会话/ cookie?

我们在多语言/多域网站上编写了一个Extbase扩展。 我们在用户会话中存储搜索表单中的搜索词。如果用户切换页面语言,他应该得到与以前相同的结果 - 无需重新填写搜索表单。

一种方法是告诉浏览器同时存储多个cookie - 每个域/语言一个。如何使用TYPO3 / Extbase实现这一目标?

1 个答案:

答案 0 :(得分:1)

默认情况下,无法为其他域设置Cookie - 无论是否使用TYPO3。这是在每个浏览器中实施的安全措施(或者您是否希望我在您访问我的网站时从yourbank.com设置/读取您的cookie?; - ))

您必须创建一些帮助您执行此操作的帮助程序脚本。一种方法可能是:

  • example.com已加载
  • 此页面在example.org上包含iframe到PHP脚本(或TYPO3站点,例如使用eID),其中GET参数存储为会话ID
  • 从example.org加载的脚本读取GET参数并设置具有该会话ID的cookie(或您要传输的任何参数)。
  • 之后,在浏览example.org
  • 时也可以使用cookie

我从未尝试过这个,但我很确定它可以与PHP一起使用。也许它甚至可以用纯JavaScript,但我不太确定。在每种情况下,请考虑使用解释的脚本获得的安全漏洞。如有疑问请签署参数(或需要令牌)!