2019-10-26 18:07:36 +02:00
< ? php
use App\Kernel ;
2026-04-09 12:10:37 +02:00
use Symfony\Component\ErrorHandler\Debug ;
2019-10-26 18:07:36 +02:00
use Symfony\Component\Dotenv\Dotenv ;
use Symfony\Component\HttpFoundation\Request ;
require __DIR__ . '/../vendor/autoload.php' ;
// The check is to ensure we don't use .env in production
if ( ! isset ( $_SERVER [ 'APP_ENV' ])) {
if ( ! class_exists ( Dotenv :: class )) {
throw new \RuntimeException ( 'APP_ENV environment variable is not defined. You need to define environment variables for configuration or add "symfony/dotenv" as a Composer dependency to load variables from a .env file.' );
}
( new Dotenv ()) -> load ( __DIR__ . '/../.env' );
}
$env = $_SERVER [ 'APP_ENV' ] ? ? 'dev' ;
$debug = ( bool ) ( $_SERVER [ 'APP_DEBUG' ] ? ? ( 'prod' !== $env ));
if ( $debug ) {
umask ( 0000 );
Debug :: enable ();
}
if ( $trustedProxies = $_SERVER [ 'TRUSTED_PROXIES' ] ? ? false ) {
2026-04-15 14:33:53 +02:00
Request :: setTrustedProxies ( explode ( ',' , $trustedProxies ), Request :: HEADER_X_FORWARDED_FOR | Request :: HEADER_X_FORWARDED_HOST | Request :: HEADER_X_FORWARDED_PROTO );
2019-10-26 18:07:36 +02:00
}
if ( $trustedHosts = $_SERVER [ 'TRUSTED_HOSTS' ] ? ? false ) {
Request :: setTrustedHosts ( explode ( ',' , $trustedHosts ));
}
$kernel = new Kernel ( $env , $debug );
$request = Request :: createFromGlobals ();
$response = $kernel -> handle ( $request );
$response -> send ();
$kernel -> terminate ( $request , $response );