2015-05-23 23:34:08 +00:00
|
|
|
<?php
|
2016-05-24 23:36:55 +00:00
|
|
|
|
2022-02-16 04:08:28 +00:00
|
|
|
namespace Code\Web;
|
2016-05-25 00:54:45 +00:00
|
|
|
|
2010-12-09 07:08:59 +00:00
|
|
|
/**
|
2015-05-23 23:34:08 +00:00
|
|
|
* @file index.php
|
2010-12-09 07:08:59 +00:00
|
|
|
*
|
2015-05-23 23:34:08 +00:00
|
|
|
* @brief The main entry point to the application.
|
2024-03-28 02:12:56 +00:00
|
|
|
*
|
2010-12-09 07:08:59 +00:00
|
|
|
*/
|
2010-07-01 23:48:07 +00:00
|
|
|
|
2024-03-28 02:12:56 +00:00
|
|
|
use App\Kernel;
|
|
|
|
use App\LegacyBridge;
|
|
|
|
use Symfony\Component\Dotenv\Dotenv;
|
|
|
|
use Symfony\Component\ErrorHandler\Debug;
|
|
|
|
use Symfony\Component\HttpFoundation\Request;
|
|
|
|
|
2024-03-28 06:05:09 +00:00
|
|
|
require 'vendor/autoload.php';
|
2024-03-13 05:21:03 +00:00
|
|
|
require_once 'src/Web/WebServer.php';
|
2011-01-10 21:45:42 +00:00
|
|
|
|
2024-03-28 06:05:09 +00:00
|
|
|
(new Dotenv())->bootEnv('.env');
|
2024-03-28 02:12:56 +00:00
|
|
|
|
|
|
|
global $kernel;
|
|
|
|
|
|
|
|
if ($_SERVER['APP_DEBUG']) {
|
|
|
|
umask(0000);
|
|
|
|
|
|
|
|
Debug::enable();
|
|
|
|
}
|
|
|
|
|
|
|
|
if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? $_ENV['TRUSTED_PROXIES'] ?? false) {
|
|
|
|
Request::setTrustedProxies(
|
|
|
|
explode(',', $trustedProxies),
|
|
|
|
Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? $_ENV['TRUSTED_HOSTS'] ?? false) {
|
|
|
|
Request::setTrustedHosts([$trustedHosts]);
|
|
|
|
}
|
|
|
|
|
|
|
|
$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
|
|
|
|
$request = Request::createFromGlobals();
|
|
|
|
$response = $kernel->handle($request);
|
|
|
|
|
|
|
|
if (false === $response->isNotFound()) {
|
|
|
|
// Symfony successfully handled the route.
|
|
|
|
$response->send();
|
|
|
|
} else {
|
|
|
|
$server = new WebServer();
|
|
|
|
$server->run($request, $response, __DIR__);
|
|
|
|
}
|
|
|
|
|
|
|
|
$kernel->terminate($request, $response);
|