Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何解决此注销错误?_Php_Session_Redirect - Fatal编程技术网

Php 如何解决此注销错误?

Php 如何解决此注销错误?,php,session,redirect,Php,Session,Redirect,我正在开发一个预先开发的管理面板,由我公司以前的员工用PHP制作。我遇到的问题是,如果我让管理面板打开30到45分钟,然后单击任何菜单链接(比如URL1),它就会重定向到登录页面。重新登录后,用户可以访问所有其他菜单链接,并接受URL1,当单击URL1时,它将再次重定向到登录页面 我已经检查代码多次,但没有找到任何脚本重定向用户登录页面后30-45分钟。事实上,我已经将所有登录页面重定向更改为注销页面重定向。下面是我的注销页面代码。有时,在执行logout.php页面后,会话和cookie无法清

我正在开发一个预先开发的管理面板,由我公司以前的员工用PHP制作。我遇到的问题是,如果我让管理面板打开30到45分钟,然后单击任何菜单链接(比如URL1),它就会重定向到登录页面。重新登录后,用户可以访问所有其他菜单链接,并接受URL1,当单击URL1时,它将再次重定向到登录页面

我已经检查代码多次,但没有找到任何脚本重定向用户登录页面后30-45分钟。事实上,我已经将所有登录页面重定向更改为注销页面重定向。下面是我的注销页面代码。有时,在执行logout.php页面后,会话和cookie无法清除

VPS中启用了反向缓存软件,这是问题所在吗

以下是logout.php代码:

<?php
session_start();

unset($_SESSION['user_id']);
unset($_SESSION['user_email']);
unset($_SESSION['full_name']);
unset($_SESSION['user_level']);
session_unset(); 
session_destroy();

// unset cookies
if (isset($_SERVER['HTTP_COOKIE'])) {
    $cookies = explode(';', $_SERVER['HTTP_COOKIE']);
    foreach($cookies as $cookie) {
        $parts = explode('=', $cookie);
        $name = trim($parts[0]);
        setcookie($name, '', time()-1000);
        setcookie($name, '', time()-1000, '/');
        header("Location: login.php");
        exit();
    }
}

?>


似乎是一个重定向问题,可能需要更多关于如何处理与日志相关的URI重定向的问题。你正在使用一个流行的CMS吗?这是一个简单的重定向后,通常的身份验证检查,我没有使用任何流行的CMS。这是自定义CMS。当会话到期并且您被重定向到登录时,您正在调用的“URL 1”是否保存为查询字符串/post变量以在登录后重定向?否没有查询字符串。。很清楚,我很难猜测你的问题。我必须看更多的代码,但这听起来确实像是缓存和cms处理登录重定向的方式的问题(你已经知道了)。对不起,我帮不上什么忙了。