## 一. **独立 SESSION**
**1.模块和插件(包含api)均使用独立会话模式** (提示: 我们可以看程序的入口执行流程来观察session配置载入);
#
**2. 配置说明**
模块session配置路径: /app/模块/config/session.php
插件session配置路径: /plugins/插件/config/session.php
#
**4. 独立session数据隔离**
使用独立session的模块和插件,在获取session时,是无法读取其它模块和插件的session数据的,但是有时业务有需求:比如需要得到用户的登陆状态,那么在获取这些登陆状态前,需重载session配置,比如用户模块的sesson的前缀是空的,说明是储存在公共位置(/runtime/session/),那么我们重载的session的配置,前缀参数 “prefix”留空就行了。
#
**5. 钩子与独立session说明**
举例:A模块和B插件
A模块使用了独立session并且储存地址不在公共位置,那么在使用钩子挂载B插件入口运行(即runHook函数调用)时,该B插件入口使用session储存和读取时,会沿用A模块的session配置; B插件的前端(home)和后台(admin)入口的,则不受影响.
#
**6.模块与独立session说明**
模块在使用独立session时,配置里面必须过滤下后台入口,举例如:hicms/config/session.php
```
if(!defined('ADMIN_ENTRANCE')){
return [
'name' => 'PHPSESSID',
'var_session_id' => '',
'type' => 'file',
'store' => null,
'expire' => 3600,
'prefix' => 'hicms',
];
}
```