揮発性のメモ2

知識をメモ書きしておく

PHPで、コマンドラインでもセッションを使う

PHPで、WEBアクセスからもCLIからもどちらからも同じセッションファイルを触りたい。


セッションの保存パスは session.save_path に書いてある。
WEBからのアクセスのときは、なんか php-fpm とかが勝手に/var/lib/php/session にしている

一方コマンドラインから見ると デフォルトは空になっていて、空のときはテンポラリディレクトリになる。

$ php -i | grep session.save_path
session.save_path => no value => no value

$ php -r "echo sys_get_temp_dir();"
/tmp

ので、/etc/php.ini かもしくは /etc/php.d/hoge.ini にて session.save_path を /var/lib/php/session に設定してあげることで
WEBでもCLIでも同じセッションファイルを触ることができる。

[Session]
session.save_path = /var/lib/php/session

ただし、セッションを扱うときは ユーザかグループを apache にしないと、とても面倒くさいことになるので注意する。