勉強したことのメモ

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_decodeが使えない際の対応方法(Services_JSON)
PHPバージョンが古くjson_decodeが使えない際の対応方法(Services_JSON)

PHPのバージョンが古くてjson_decodeが使えないという状況があった。ま ...

jQueryからAjax経由でPHPにリクエストしCookieを操作する方法
jQueryからAjax経由でPHPにリクエストしCookieを操作する方法

先日PHPでCookie保存時にHttpOnly / Secure属性を設定する ...

PHPにて配列の出力時にジェネレータを利用してメモリを節約する方法
PHPにて配列の出力時にジェネレータを利用してメモリを節約する方法

PHPにて大量のデータが格納された配列をforeach等でループ処理するような場 ...

PHPとStripeを使ってサイト内でクレジットカード決済処理の実装方法
PHPとStripeを使ってサイト内でクレジットカード決済処理の実装方法

PHPとStripeの組み合わせでWebサービスにクレジットカード決済処理を導入 ...

MySQLでIPを整数値としてカラムに格納する
MySQLでIPを整数値としてカラムに格納する

MySQLでIPを整数値としてカラムに格納しているケースがあった。今までIPが必 ...