Php Codeigniter取消链接会话不可用

Php Codeigniter取消链接会话不可用,php,codeigniter,single-sign-on,Php,Codeigniter,Single Sign On,我有多个codeigniter应用程序文件夹,使用单个登录(共享会话名称和域)来实现简单的sso 它工作正常,但有时当多个应用程序在同一浏览器中打开,并且服务器中的访问请求在同一时间产生类似这样的错误时,会导致所有应用程序继续加载,直到用户清除浏览器cookie和缓存并再次登录 取消链接(C:\xampp71\tmp\sso_sessionvarnfnkgiu1aml10tob2f2vgubgphjtf): 资源暂时不可用 C:\xampp71\htdocs\sso\system\librari

我有多个codeigniter应用程序文件夹,使用单个登录(共享会话名称和域)来实现简单的sso

它工作正常,但有时当多个应用程序在同一浏览器中打开,并且服务器中的访问请求在同一时间产生类似这样的错误时,会导致所有应用程序继续加载,直到用户清除浏览器cookie和缓存并再次登录

取消链接(C:\xampp71\tmp\sso_sessionvarnfnkgiu1aml10tob2f2vgubgphjtf): 资源暂时不可用 C:\xampp71\htdocs\sso\system\libraries\Session\drivers\Session\u files\u driver.php 386


要解决此问题,您需要设置文件夹权限,或者您可以更改已具有权限的文件夹目录。因此,简单的解决方案是在配置文件中设置文件夹路径
config.php
位于
/application/config/config.php
中。您可以看到如下所示的会话配置

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
您需要设置会话文件的文件夹路径。要设置文件夹路径,您需要设置
$config['sess\u save\u path']
的值,该值当前设置为
NULL
。您可以按如下方式设置该值:

$config['sess_save_path'] = APPPATH . 'cache';
我正在使用缓存文件夹,您可以使用您想要的任何文件夹,但请确保该文件夹具有权限


因此,您将不再看到“会话–不允许取消链接操作”。

创建一个公共会话存储文件夹,并将所有CI应用程序指向该会话存储,然后它将正常工作。默认web服务器会话存储位置有什么关系?我使用windows作为服务器,问题不在于权限,但在某些应用程序尝试更新会话时,会话文件丢失(我使用具有相同会话设置的多个CI来实现单点登录)