25 lines
799 B
PHP
Executable File
25 lines
799 B
PHP
Executable File
<?php
|
|
ini_set('session.cookie_secure', 1);
|
|
ini_set('session.cookie_httponly', 1);
|
|
// Must be the very first thing on any protected page
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
|
|
// Incluir el helper de URLs y establecer las cabeceras de seguridad
|
|
require_once __DIR__ . '/../includes/url_helper.php';
|
|
require_once __DIR__ . '/db.php'; // Asegura que $pdo esté disponible
|
|
require_once __DIR__ . '/activity_logger.php'; // Asegura que log_activity esté disponible
|
|
set_security_headers();
|
|
|
|
// Generar token CSRF si no existe
|
|
if (!isset($_SESSION['csrf_token'])) {
|
|
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
|
|
}
|
|
|
|
// Verificar si el usuario ha iniciado sesión
|
|
if (!isset($_SESSION['user_id'])) {
|
|
header('Location: ' . site_url('login.php'));
|
|
exit();
|
|
}
|
|
?>
|