PHP 会话即将超时

PHP Session Timing Out Soon

我正在开发一个 PHP 基于角色的应用程序,我也必须在其中维护会话。一旦用户登录,他将被重定向到我管理会话的界面,因为用户 ID 和密码将与角色匹配。如果不匹配,他将被重定向到如下登录。

if (!isset($_SESSION['user_login']))
{
    header("Location:index.php");
}
else
{
    if((time()-$_SESSION['expire']) > 365*24*60*60)
    {
        session_destroy();
    }
    else{
    //user would stay logged in
    }
} 

这也与数据table交互,其中只要会话超时,它就会为 table 抛出错误,即:

datatables warning table id= - requested unknown parameter '0' for row 0 column 0 tn/4

我想如果我增加会话超时,这不会是一个负担。我想尽一切办法,但都以失败告终。

除了本地之外,似乎没有什么可以工作的。请指教

更新(会话和 cookie 是如何从登录构建的):

if(!empty($_POST["remember_me"]))
{
    setcookie ("user", $_POST["userid"], (time() + (10 * 365 * 24 * 60 * 60)));
    setcookie ("pass", $_POST["password"], (time() + (10 * 365 * 24 * 60 * 60)));
}
else
{
    if(isset($_COOKIE["userid"]))
    {
        setcookie ("userid", "");
    }
    if(isset($_COOKIE["password"]))
    {
        setcookie ("password", "");
}

if (!session_id()) session_start();
$_SESSION['user_login'] = $userid;

$_SESSION['expire'] = time();

header('Location: user_interface.php');

经过多次尝试,我们必须将会话路径更改为 .htaccess 上的“/tmp”。如果应用程序托管在共享主机中,这就是它的工作方式。