この問題は、セッション ID がドメイン固有であるため、異なるドメイン間ではアクセスできないことが原因で発生します。
セッション ID は通常、Cookie を介して送信されます。ただし、Web サイトは別のドメインでホストされているため、セッション Cookie のドメイン制限により転送が妨げられます。
これを克服するには、すべてのリクエストのクエリ文字列にセッション ID を追加することを検討してください。 PHP はこのアプローチを部分的にサポートしていますが、URL 共有によるセキュリティ上の懸念など、いくつかの欠点があります。
優れたソリューションには、JavaScript を活用してクロスドメイン リクエストを容易にすることが含まれます。これにより、複数のサーバー間でセッション ID をシームレスに転送できます。
クロスドメイン セッション ID が解決された場合でも、セッション データを関係するすべての Web サーバーにアクセスできる場所が重要です。デフォルトでは、セッション データはローカル ファイル システムに存在しますが、これはクロスドメイン シナリオには適していません。
実行可能な解決策は、セッション データをデータベースまたは別の共有ストレージ システムに保存するカスタム セッション ハンドラーを実装することです。これにより、必要なすべてのサーバーがセッション データにアクセスできるようになり、クロスドメイン セッション機能が有効になります。
以上が異なるドメイン間でセッション変数を共有するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。