Symfony2 アプリがあり、symfony 以外の別のアプリからセッション セットを読み取る必要があります。
symfony 以外のアプリ$_SESSION
は、いつものようにセッションを に設定するだけです。
ただし、このセッションを読み取ろうとすると、データがありません。やっても構わない
$session = $this->get('request')->getSession();
var_dump($session->all());
または(これを行うべきではないことはわかっていますが、とにかく)
var_dump($_SESSION);
これにより、セッションが既に開始されているというエラーが発生し、Symfony アプリでセッションを開始したことがないにもかかわらず、エラーが発生する理由がわかりません。この方法が実際に機能するかどうかを教えて、物事を調べることができますsession_start()
。
$session = new Session();
$session->start();
var_dump($session->all());
Cookie は Symfony2 アプリで設定され、その値は symfony 以外のアプリで設定されたPHPSESSID
Cookie と同じですが、私の Symfony2 アプリはセッションのコンテンツの読み取りを拒否するだけです。(明確にするために、を$session->getName()
返しますPHPSESSID
)
(正確には、両方のアプリは同じドメインの下にありますが、サブドメインは異なります。私は既にSymfony アプリでframework.session.domain
正しく設定しており、サブドメイン間でセッション Cookie を共有できるように、同じドメイン設定を持つように非 symfony アプリapp/config.yml
を呼び出しました) 。session_set_cookie_params
.example.com
では、非 symfony アプリによって設定された Symfony2 アプリ/コントローラーのセッションをどのように読み取るのでしょうか? ありがとう。
これが問題になる場合は、Symfony 2.1 を使用しています。