thinkphp做的两套程序的session是共享的,怎么解决

thinkphp做的两套程序的session是共享的,怎么解决,第1张

在thinkphp5.0以上版本中,支持指定 Session 驱动,也就是把session存到一个共用的redis数据库中。

配置文件如下:

'session' =>[

'prefix' =>'module',

'type' =>'redis',

'auto_start' =>true,

// redis主机

'host' =>'127.0.0.1',

// redis端口

'port' =>6379,

// 密码

'password' =>'',

]

表示使用redis作为session类型。

具体的可以参考thinkphp5的文档。

另外,负载均衡的session共享也可以采用这种方式

php中的session可以定制为 存储为 文件, 数据, 或缓存服务器. 一般现有php框架基本已经提供相应的类模块. 可以查看相应的框架手册.

简单的回答是: 是的. session数据可以保存在数据库里.

即便用户输入了一些恶意的id参数,系统也会强制转换成整型,避免恶意注入。这是因为,系统会对数据进行强制的数据类型检测,并且对数据来源进行数据格式转换。而且,对于字符串类型的数据,ThinkPHP都会进行escape_string处理(real_escape_string,mysql_escape_string)。

而且,你在验证的时候尽量使用数组查询,这样会比较安全,比如:

$map['username']=I('post.name')

$map['userpassword']=I('post.password')

$list=$data=D("user")->where($map)->find()

这样就好了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10869414.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存