現在、Yii2アプリケーションと並行してCraftアプリケーションを実行しようとしています。私は正しい時間に正しいアプリケーションのブートストラップを持っているが、セッションの問題を書くことに走っている。コントローラのアクションが終了した後にYii2セッションが失われる
セッションをローカルファイル(デフォルトのapache2ファイル)に書き込んでいます。
何かの理由で、Yii2アプリで$_SESSION['something'] = 'test';
を使用してセッションに変数を追加しようとすると、アプリがシャットダウンすると利用できなくなります。
私はこの「何か」キーをYii2のセッションに追加し、約3秒後にCraftアプリでセッション変数にアクセスしようとしています。
このセッション変数が失われている理由はありますか?私がYii2アプリケーションから戻る前に$ _SESSIONをプリントアウトすると、それはそこにありますが、アクションが終了した後にセッションから失われますか?
私のコントローラの実行が終了方法がこれです:
//Setup for the return of JSON.
\Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
header('Content-type: application/json');
$returnData = self::filterOutSensitiveResponseInfo($returnData);
//Get timeouts for the front-end.
$returnData = [
"responseData" => $returnData
];
//Handle logging of the return from controller.
if(self::includeCurrentActionInLogs()){
self::logActionTiming();
self::logActionResponse($returnData);
}
//output JSON to the front-end.
echo json_encode($returnData, JSON_PRETTY_PRINT);
//Handle successful shutdown of the application.
\Yii::$app->end();
return;
このコードは、私はすぐに別のコントローラのアクションを呼び出し、$ _SESSIONを見ているが、私は以前に格納されたその変数が存在しなくなったよ実行完了したら?
EDIT ::私は、問題は、これらの設定であると思い ::
session.cooke_secure ON
session.name = CraftSessionId
session.cookie_httponly ON
^これらは、これらがYii2ための設定です^ CraftCMS
session.cooke_secure OFF
session.name = PHPSessionId
session.cookie_httponly OFF
ための設定です。
どのようにこれらの設定をCraftに合わせて変更できますか?私が今までCraftCmsを使用していないが、私は、問題は、この行であることを考える