临时解决session.save_path路径不存在问题

PHP配置文件中session.save_path负责session文件的存放位置。

如果没有配置则不会生成session文件,如果配置的目录session.save_path = “E:/temp”不存在,则会报错:

Warning: session_start() [function.session-start]: open(E:/temp/sess_e0b64760c92422d81c1d6202b66884f6, O_RDWR) failed: No such file or directory (2) in E:/APMServ5.2.6/www/htdoc/index.php on line 13

Warning: Unknown: open(E:/temp/sess_e0b64760c92422d81c1d6202b66884f6, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (E:/temp) in Unknown on line 0

所以,如果需要生成session文件,需要检查配置文件.如果没有配置目录,则请将php.ini中的“;session.save_path = “/tmp”” 改为“session.save_path = “E:/yourdir””,并切记在E盘根目录下新建,名为yourdir的文件夹。

设置完成后需要重启服务,然后设置生效。

可以再php文件中测试,是否设置成功。

$sessionpath = session_save_path();

if (strpos ($sessionpath, “;”) !== FALSE)

$sessionpath = substr ($sessionpath, strpos ($sessionpath, “;”)+1);

//获取当前session的保存路径

echo $sessionpath;

但是我们维护的网站不一定有php.ini修改权限,所以才有了临时解决session.save_path路径不存在问题,即在session_start()前指定session保存在已经存在的路劲下。

ini_set('session.save_path',$_SERVER['DOCUMENT_ROOT'] . '/temp');


支付宝扫码打赏 微信扫码打赏

如果本文对你有帮助,欢迎打赏本站

喜欢 ()or分享
    匿名评论
  • 评论
人参与,条评论