仅为一页设置session_set_save_handler

时间:2016-08-25 15:55:55

标签: php session handler

在我的php.ini中,我有以下设置:

session.save_handler = redis
session.save_path = "tcp://localhost:6379?weight=1"

但我希望保留该设置,因为它适用于此系统我正在使用,但唯一的事情是当我尝试创建会话时它给我错误..离开点。

问题是,我试图将保存处理程序设置为仅用于我的login.php的文件,然后再使用redis。

我的文件中有以下代码,但没有从redis更改为文件:

session_set_save_handler('files');
session_save_path("/tmp/");
session_start(); // Starting Session

1 个答案:

答案 0 :(得分:3)

session_set_save_handler functionsession.set_handler configuration指令完全不同。前者期望callable type作为其第一个参数,而后者期望标量值作为PHP中的注册处理程序之一。

你想要的是ini_set('session.save_handler', 'files')

session.save_path会话处理程序设置redis时,应避免使用无法通过DNS解析程序直接解析的主机名。这几乎与/etc/hosts localhost中的127.0.0.1相似。相反,请尝试使用redis直接侦听的IP地址,例如/etc/hosts。这样做的原因是PHP在解析主机名时不会直接尝试python