勉強したことのメモ

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でJSONデータを見やすく整形した上で表示させる方法
PHPでJSONデータを見やすく整形した上で表示させる方法

PHPで何らかのデータをjson_encodeでJSONに変換し、そのままech ...

PHPでテンプレートPDFに動的に文字や数値を追記し出力する方法(TCPDF&FPDI)
PHPでテンプレートPDFに動的に文字や数値を追記し出力する方法(TCPDF&FPDI)

請求書や領収書のテンプレートがあり、そちらに対して動的に文字・数値を追記し出力さ ...

PHPで簡単にカレンダーを生成できるライブラリ「PHP Calendar」の利用方法
PHPで簡単にカレンダーを生成できるライブラリ「PHP Calendar」の利用方法

PHPでカレンダーを描写したいということがたまにある。今までバニラPHPで書いて ...

PHPでLINEログイン後「ユーザー名」「ユーザーID」「プロフィール画像URL」「メッセージ」を取得する方法
PHPでLINEログイン後「ユーザー名」「ユーザーID」「プロフィール画像URL」「メッセージ」を取得する方法

<a>タグのリンクからページ遷移するとLINEログインし、その後に「 ...

PHPでデータベースを取り扱いやすくなるORMライブラリ「idiorm」の利用方法
PHPでデータベースを取り扱いやすくなるORMライブラリ「idiorm」の利用方法

Codeigniterでデータベースを取り扱う際にクエリビルダクラスを用いて可読 ...