我去和使用下面的腳本PHP - 會話cookie到期/無效更早接料
session_start();
$_SESSION['username'] = $query[0]['username'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['image'] = $query[0]['image'];
$_SESSION['role'] = $query[0]['role'];
$_SESSION['banned'] = $query[0]['banned'];
$_SESSION['id'] = $query[0]['id'];
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
$_SESSION['useragent'] = $_SERVER['HTTP_USER_AGENT'];
setcookie(session_name(),session_id(),time()+604800,"/");
//redirect to homepage since now logged in.
login現在在主頁再次IM和登錄,一切正常,因爲它應該。 但僅僅幾個小時後,isset($ _ SESSION ['username'])將返回false,但過期時間仍然設置爲7天,並且cookie仍然存在。
截止日期的小時比我的時區實際時間小時滯後1小時。不確定這是否重要。我將時區服務器端更改爲隨機時區,cookie過期數據未更改。
htaccess的:
php_value session.cookie_lifetime 604800
php_value session.gc_maxlifetime 604800
(這是htaccess的根,與第一個代碼塊的上方,在根/登錄不知道它很重要。)。
您的pc時間是18:52 GMT – craig
@craig正確。 – user8549339
設置時區並重試 - date_default_timezone_set('您的時區'); – craig