541   PHP

PHP session 保存在服务器的文件中,不是内存中,通过配置文件php.ini指定文件路径;
具体参数:

session.save_handler = files
session.save_path = "/tmp"

文件名以sess_为前缀,后面跟着session_id,比如:
sess_7ndnt9ap6f172h9prdf2bim3s4

另外,session的目录即save_path通过使用分层结构

session.save_path = "3;/tmp/session"

PHP 可能没权限生产目录,需要手动生成,找到PHP源码代码的扩展目录ext/session,里面有个mod_files.sh脚本专门用来生成目录
需要指定两个参数,第一个分层级数,这里是3;另外一个是php.ini配置文件里的session.hash_bits_per_character,这里是5;
所以执行以下脚本即可手动生成session的目录

sh mod_files.sh /tmp/session 3 5 

目录生成后,可能PHP读写目录的权限不够,赋权即可




Leave a Reply

Your email address will not be published. Required fields are marked *