天天看点

CI框架 报错 Message: mkdir(): Invalid path Filename: drivers/Session_files_driver.php _CodeIgniter心得

本地测试没问题,然后架设到服务器出现报错

A PHP Error was encountered
Severity: Warning

Message: mkdir(): Invalid path

Filename: drivers/Session_files_driver.php

Line Number: 136
           

如图:

CI框架 报错 Message: mkdir(): Invalid path Filename: drivers/Session_files_driver.php _CodeIgniter心得

经过排查可能会有以下原因!

1.由于ci框架默认Session是会缓存到PHP的的缓存目录,由于本地环境是开放的,没有权限限制,所以程序是不会报错的

2.CI框架配置文件为空的情况下,会去读php配置中的session.save_path的路径,因为session.save_path为空,所以报错咯

CI框架 报错 Message: mkdir(): Invalid path Filename: drivers/Session_files_driver.php _CodeIgniter心得

但是上传到服务器环境,有于某些服务器环境安全权限设置问题,导致默认目录是没权限的,所以就出现上面的报错。

解决方法也很简单,CI框架默认配置文件里面提供了 sess_save_path Session的保存路径修改参数

修改下面文件

application/config/config.php

把原来的

$config['sess_save_path'] = NULL;
           

修改成新的

$config['sess_save_path'] = FCPATH.'cache/sess_save_path';
           

这样就会缓存在根目录的cache目录下面

继续阅读