在Symfony2中克隆另一个域的会话cookie

时间:2014-01-24 11:59:33

标签: php session symfony cookies symfony-2.4

我正在寻找一种可行的解决方案,为另一个Symfony2环境中的另一个域设置会话cookie的安全克隆。我的想法是,在用户登录后立即设置克隆cookie,以便可以在两个不同域上的两个不同Symfony2环境中对用户进行身份验证。

Domain: mysite-a.com        // Environment -e site
Domain: api.mysite-b.com    // Environment -e api

在哪里可以找到类似控制器事件(最佳解决方案)的内容?

我正在使用2.x.dev的最新FOSUserBundle版本。

我知道,这种配置非常难看。不幸的是,我不被允许 将域配置从api.mysite-b.com更改为api.mysite-a.com(也称为通配符cookie)。

1 个答案:

答案 0 :(得分:0)

我认为没有合适的捆绑来处理这个问题,但在PHP规范中,您可以找到一个准确的选项来管理您的问题$domain

bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] );

在symfony2中,您已经使用Cookie对象:

use Symfony\Component\HttpFoundation\Cookie;

$response->headers->setCookie(new Cookie('foo', 'bar'));

Cookie构造函数与PHP方法具有相同的选项:

public function __construct($name, $value = null, $expire = 0, $path = '/', $domain = null, $secure = false, $httpOnly = true)

的问候,