PHP セッション クロスドメイン アプリケーションのケース分析
要約:
セッションは、異なるページ間でデータを共有するために PHP で一般的に使用されるメカニズムです。ただし、複数のドメインまたはサブドメイン間でセッション データを渡すのは困難です。この記事では、特定のケースを使用して、PHP セッション クロスドメイン アプリケーションを実装する方法を紹介し、対応するコード例を示します。
domain-a.com で、セッション データを設定するための set_session.php という名前のファイルを作成します。コードは次のとおりです。
<?php session_start(); $_SESSION['data'] = 'Hello, world!'; echo 'Session data has been set.'; ?>
domain-b.com で、セッション データを読み取るための get_session.php という名前のファイルを作成します。コードは次のとおりです。
<?php header('Access-Control-Allow-Origin: domain-a.com'); // 允许 domain-a.com 跨域访问 header('Access-Control-Allow-Credentials: true'); // 允许携带 Cookie session_start(); echo 'Session data: ' . $_SESSION['data']; ?>
実際の使用では、domain-b.com にアクセスする前に、設定したセッション データが保存されていることを確認する必要があります。セッションデータはset_session.phpにアクセスすることで設定でき、その後のアクセスで読み取ることができます。
さらに、セッション Cookie の送信を許可するには、「Access-Control-Allow-Credentials」ヘッダー フィールドの値を true に設定し、サーバー構成でDomain-b.com、同一生成元ポリシーをワイルドカードではなく特定のドメイン名に設定します。
参考:
以上がPHPセッションのクロスドメインアプリケーションの事例分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。