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にしないと、とても面倒くさいことになるので注意する。