31 lines
863 B
PHP
31 lines
863 B
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
require __DIR__.'/../vendor/autoload.php';
|
|
|
|
use App\Shared\Bootstrap;
|
|
use App\Shared\Http\RequestContext;
|
|
|
|
$bootstrap = Bootstrap::create();
|
|
$bootstrap->initializeInfrastructure();
|
|
|
|
$trustedProxies = RequestContext::trustedProxiesFromEnvironment($_ENV, $_SERVER);
|
|
$sessionName = trim((string) ($_ENV['SESSION_NAME'] ?? 'slim_blog_session')) ?: 'slim_blog_session';
|
|
|
|
ini_set('session.use_strict_mode', '1');
|
|
ini_set('session.use_only_cookies', '1');
|
|
ini_set('session.cookie_httponly', '1');
|
|
ini_set('session.cookie_samesite', 'Lax');
|
|
session_name($sessionName);
|
|
|
|
session_start([
|
|
'cookie_secure' => RequestContext::isHttps($_SERVER, $trustedProxies),
|
|
'cookie_httponly' => true,
|
|
'cookie_samesite' => 'Lax',
|
|
'cookie_lifetime' => 0,
|
|
'use_strict_mode' => 1,
|
|
]);
|
|
|
|
$app = $bootstrap->createHttpApp();
|
|
$app->run();
|