400-800-9385
网站建设资讯详细

PHP空间出现session无法保存问题解决办法

发表日期:2013-08-27 00:00:00   作者来源:方维网络   浏览:8879   标签:session    php空间    

     今天突然发现,一个运行9个月的PHP万网Linux空间出现验证码无法通过,会员无法登陆,后台也无法登陆的问题,因为这几个功能一直运行很好,而且服务器也是国内最好的万网,页面访问很正常,所以感到非常的奇怪。

    经过方维技术部检测,是session无法保存的问题,显示错误语句是session_start();

    详细错误信息如下:

    open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/www/)

    是空间保存session的默认路径/tmp没有了权限,因为如果默认不设置session保存路径, session是保存在网站根目录tmp里的,出现这个问题的原因应该是万网服务器配置改变,去掉了tmp的访问或修改权限,所以导致session读取和保存出错。所以出现这个问题的原因是万网服务器配置改变,解决办法是自定义session的保存路径,关键代码如下:

    define('ROOT_PATH', str_replace("\\", '/', substr(dirname(__FILE__), 0, -9)));
    $savePath=ROOT_PATH."/tmp/";//把session保存自己网站的跟目录,这样就没有目录限制了
    session_save_path($savePath);
    session_start();

如没特殊注明,文章均为方维网络原创,转载请注明来自https://www.szfangwei.cn/news/1954.html