勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

PHPにてメインドメイン⇔サブドメイン間でCookie及びSESSIONを共有する方法

  PHP

PHPにてメインドメインのサイトで発行したCookie及びSESSIONをサブドメインのサイトでも利用したい。以下に対応方法のメモ。

 

対応方法

Cookie

setcookie('test_cookie_key', 'test_cookie_val', time() + 3600, '/', '.test.com');

第四引数に「.(ドット)【メインドメイン名】」を指定しCookieを発行すると、サブドメインでも利用可能となる。

SESSION

php.iniもしくは.user.iniで以下を指定する。メインとサブドメインで設定ファイルが異なる場合はどちらも同じく以下を設定すること。

session.cookie_domain = '.test.com';

後は以下のようにSESSIONを発行するとサブドメインでも利用可能となる。

session_start();
$_SESSION['test_session_key'] = 'test_session_val';

 

参考サイト

https://zenn.dev/aipics/articles/64062dfa7890e7

https://web.analogstd.com/tips/posts/php/share-session-between-subdomains.php

 - PHP

  関連記事

PHPで作成したプログラムをcron設定し自動実行する方法
PHPで作成したプログラムをcron設定し自動実行する方法

cronの設定方法。サーバー側での設定とPHP側での書き方を以下にメモ。 &nb ...

CodeIgniter4でのメール送信方法(テキスト・HTMLメール)
CodeIgniter4でのメール送信方法(テキスト・HTMLメール)

CodeIgniter4.4.4でテキストメール及びHTMLメールを送信したい。 ...

PHPで指定したカラーコードの反対色を計算し、カラーコードとして出力する方法
PHPで指定したカラーコードの反対色を計算し、カラーコードとして出力する方法

あるシステム内でユーザが指定したカラーコードをCSSで指定した上で出力するという ...

PhpSpreadsheetで作成したエクセルファイルをPDFファイルに変換する方法
PhpSpreadsheetで作成したエクセルファイルをPDFファイルに変換する方法

以前にPhpSpreadsheetでフォーマット用のエクセルを読み込み、指定した ...

UTF-16にエンコードされている文字列をUTF-8へデコード
UTF-16にエンコードされている文字列をUTF-8へデコード

エンコードされている文字列であまり見かけない感じのものがあった。UTF-8やSh ...