勉強したことのメモ

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

  関連記事

CodeIgniter4でフォームからファイルをアップロードし保存する方法
CodeIgniter4でフォームからファイルをアップロードし保存する方法

CodeIgniter4.4.4でformから画像等のファイルをアップロードし、 ...

PHPでtwitterとfacebookのいいねやフォローのカウント数を取得する方法
PHPでtwitterとfacebookのいいねやフォローのカウント数を取得する方法

PHPでtwitterとfacebookのいいねやフォロー数を取得して表示させた ...

HTML / CSSで作成したコンテンツをPDFファイルで出力する方法(TCPDF)
HTML / CSSで作成したコンテンツをPDFファイルで出力する方法(TCPDF)

HTML / CSSで作成したコンテンツをPDFファイルで出力させたい。以前mp ...

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

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

PHPでdatetime型のデータを年月日時分秒に分割する方法
PHPでdatetime型のデータを年月日時分秒に分割する方法

datetime型を年月日時分秒でそれぞれに分割させたい時に今まではいちいちex ...