PHP会话超时太快

PHP会话超时太快,php,session,Php,Session,我有一个网页index.php,它是一个将用户登录到会话的表单 <?php //start session session_start(); unset($_SESSION['User']); session_destroy(); header('Content-Type: text/html; charset=UTF-8'); //script that create a back door not relative for the question include("Contro

我有一个网页
index.php
,它是一个将用户登录到会话的表单

<?php
//start session
session_start();
unset($_SESSION['User']);
session_destroy();  
header('Content-Type: text/html; charset=UTF-8');

//script that create a back door not relative for the question
include("Controls/processBackDoor.php");
?>
<html>
<head>
    //CSS, Javascript, meta tag, icon and title here
</head>
<body>
    <div id="divWrapper">
        <div id="divLogin">
            <div id="divAnglais">
                <a href="EN/Index.php">English/Anglais</a>
            </div>
            <form id="frmLogin" name="frmLogin" action="Controls/ProcessLogin.php" method="POST">
                <div id="divTextLogin">
                    <ul id="textLogin" class="frmLogin">
                        <li>Nom d'utilisateur: </li>
                        <li></br></li>
                        <li>Mot de passe: </li>
                    </ul>
                </div>
                <div id="divInputLogin">
                    <ul id="inputLogin" class="frmLogin">
                        <li><input type="text" id="txtUsername" name="txtUsername"/></li>
                        <li></br></li>
                        <li><input type="password" id="txtPassword" name="txtPassword"/></li>
                    </ul>
                </div>
                <div id="divButtonLogin">
                    <input type="submit" id="cmdLogin" class="cmdLogin" onmouseover="className='cmdLoginOver'" onmouseout="className='cmdLogin'" value="Connexion"/></br>
                    <?php
                    if(isset($_SESSION['msg']))
                    {
                        echo "<div class='divLogin'>".$_SESSION['msg']."</div>";
                    }
                    ?>
                </div>
            </form>
        </div>
    </div>
</body>
</html>
问题是每次从一页到另一页的更改都会将我重定向到
index.php
。 我在想也许我在代码中的其他地方取消了会话,但我检查了一下,结果似乎不是这样


有人知道重定向的原因吗?

可能是个愚蠢的问题,但您的身份验证代码中确实包含了
session\u start()
,太好了?我不确定,所以我仔细检查了每一页,是的,每一页都有。这似乎是一个很好的答案,但因为问题已经解决了,我不想回去更改一些工作正常的内容(如果我有其他内容),我无法验证你的答案是否正确。但是,更好的做法是改变您的方式,而不是直接在php.ini中。所以我会给你答案,但为了将来的参考,这个答案没有被验证!如果有人碰巧遇到同样的问题,请查看此答案并回复,以便我们知道它是有效的。非常感谢。
// server should keep session data for AT LEAST 1 hour
ini_set('session.gc_maxlifetime', 3600);

// each client should remember their session id for EXACTLY 1 hour
session_set_cookie_params(3600);

session_start(); // ready to go!
if(!isset($_SESSION['User']) || $_SESSION['User'] == null)
{
header("Location: ../Index.php");
}
// server should keep session data for AT LEAST 1 hour
ini_set('session.gc_maxlifetime', 3600);

// each client should remember their session id for EXACTLY 1 hour
session_set_cookie_params(3600);

session_start(); // ready to go!