Update config_enhanced.php
This commit is contained in:
@@ -327,14 +327,20 @@ if (session_status() == PHP_SESSION_NONE) {
|
|||||||
ini_set('session.cookie_secure', isset($_SERVER['HTTPS']));
|
ini_set('session.cookie_secure', isset($_SERVER['HTTPS']));
|
||||||
ini_set('session.use_strict_mode', 1);
|
ini_set('session.use_strict_mode', 1);
|
||||||
// Asegurar que la cookie de sesión y GC respeten el timeout configurado (SESSION_TIMEOUT)
|
// Asegurar que la cookie de sesión y GC respeten el timeout configurado (SESSION_TIMEOUT)
|
||||||
ini_set('session.cookie_lifetime', (int)SESSION_TIMEOUT);
|
// Si SESSION_TIMEOUT <= 0 lo interpretamos como "persistente" (no expira): usamos un valor grande para cookie y GC
|
||||||
ini_set('session.gc_maxlifetime', (int)SESSION_TIMEOUT);
|
$cookieLifetime = (int)SESSION_TIMEOUT;
|
||||||
|
if ($cookieLifetime <= 0) {
|
||||||
|
// 10 años en segundos
|
||||||
|
$cookieLifetime = 10 * 365 * 24 * 60 * 60;
|
||||||
|
}
|
||||||
|
ini_set('session.cookie_lifetime', $cookieLifetime);
|
||||||
|
ini_set('session.gc_maxlifetime', $cookieLifetime);
|
||||||
session_start();
|
session_start();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Verificar timeout de sesión
|
// Verificar timeout de sesión (solo si SESSION_TIMEOUT > 0)
|
||||||
if (isUserLoggedIn() && isset($_SESSION['last_activity'])) {
|
if (isUserLoggedIn() && isset($_SESSION['last_activity'])) {
|
||||||
if (time() - $_SESSION['last_activity'] > SESSION_TIMEOUT) {
|
if (defined('SESSION_TIMEOUT') && (int)SESSION_TIMEOUT > 0 && (time() - $_SESSION['last_activity'] > (int)SESSION_TIMEOUT)) {
|
||||||
writeLog('INFO', 'Session timeout', ['user' => $_SESSION['username'] ?? 'unknown']);
|
writeLog('INFO', 'Session timeout', ['user' => $_SESSION['username'] ?? 'unknown']);
|
||||||
session_destroy();
|
session_destroy();
|
||||||
session_start();
|
session_start();
|
||||||
|
|||||||
Reference in New Issue
Block a user