ホームページ >バックエンド開発 >PHPチュートリアル >サブドメイン間で PHP セッションを共有するにはどうすればよいですか?

サブドメイン間で PHP セッションを共有するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-13 13:49:13474ブラウズ

How to Share PHP Sessions Across Subdomains?

PHP でのクロスサブドメイン セッション共有

複数のサブドメイン間でユーザー セッションを管理する場合、シームレスなログインとデータの永続性を確保することが重要です。このシナリオでは、プライマリ ドメインで作成された承認されたセッションにサブドメインがアクセスできるようにする必要があります。

クロスサブドメイン Cookie を有効にするために、php.ini の session.cookie_domain を .example.com に設定しようとしました。共有すること。ただし、コードは共有セッション データを読み取っていないようです。

これを解決するには、次のことを試してください。

// sub1.example.com  
session_name('YOUR_SESSION_NAME'); // Add a unique name, e.g., 'my_session'
session_set_cookie_params(0, '/', '.example.com');
session_start();
print session_id() . "<br>";
$_SESSION['Registered'] = 1;
echo '<a href="http://auth.example.com/test.php">Change Sites</a>';

// auth.example.com
session_name('YOUR_SESSION_NAME'); // Match the name from sub1.example.com
session_set_cookie_params(0, '/', '.example.com');
session_start();
print session_id() . "<br>";
$_SESSION['Checked'] = 1;
print_r($_SESSION);

session_name('YOUR_SESSION_NAME'); を追加します。 Cookie パラメータを設定する前に、サブドメインが同じセッション名を使用していることを確認してください。これにより、共有セッション データにアクセスして変更できるようになります。 YOUR_SESSION_NAME を一意の識別子に置き換えます。

以上がサブドメイン間で PHP セッションを共有するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。