当前位置:首页 > 编程开发 > PHP > 正文内容

阿里云虚拟主机 session_start(): Failed to initialize storage module 解决办法

Codefans4年前 (2021-10-30)PHP1992

今天更新了一下自己的代码框架时,然后后台就提示登陆不了,报错如下:Failed to initialize storage module。

解决方法有两种如下:

1。在报错的文件里的session start();之前加入如下代码:ini_set(‘session.save_handler’, ‘files’); 。这种方法适合租用空间的用户使用。

2。在php.ini文件里,显式指定session的save_path(比如 c:/temp)然后重启web服务。如果服务器的管理权限属于你,那还是这样改比较方便。

原因分析:php5一个安全模式的bug,默认session的save_path是系统的临时目录,这样会要校验权限。

  Fatal error: session_start(): Failed to initialize storage module: user (path: /tmp) in /home/***.php on line 1 
从错误看来是系统临时目录/tmp无法保存session文件的问题,
原则上我们可以直接修改php.ini中的session.save_handler值从’user’到’files’。但是在虚拟空间里通常都没有修改权限。这是我的解决办法:
   

if(!is_dir('./tmp/'))mkdir ('./tmp/', 0700);
session_save_path('./tmp/');
session_start();

如果是阿里云虚拟主机,还要到虚拟主机管理平台中“php.ini设置”,开启“输出缓冲区数据块设置

直接在session_start前面增加上面的内容。
或者打开php.ini中的seession.path指定有权限的路径。

扫描二维码推送至手机访问。

版权声明:本文由图慧网发布,如需转载请注明出处。

本文链接:http://www.tuh8.com/?id=21

分享给朋友:

“阿里云虚拟主机 session_start(): Failed to initialize storage module 解决办法” 的相关文章

phpexcel导出文件内容空白或错误原因之一(存在乱码字符)的解决办法

public function illegal_unicode($str='') {     $txtcode=explode('\u',str_replace("\""...

阿里云虚拟主机php7.0自定义redis组件方法

阿里云虚拟主机php7.0自定义redis组件方法

1.下载适配7.0的redis.so文件点击此处下载提取码: hxtk或者自行百度寻找2.利用ftp将下载的redis.so上传至myfolder文件夹中3.登录阿里云打开云虚拟主机管理界面4.高级环境配置5.PHP和Zend扩展组件6.myfolder文件夹中逐级寻找刚刚上传的redis.so,并...