29 lines
790 B
PHP
29 lines
790 B
PHP
<?php
|
|
|
|
require_once __DIR__ . '/app/config.php';
|
|
|
|
// CORS заголовки
|
|
$origin = $_SERVER['HTTP_ORIGIN'] ?? '';
|
|
header("Access-Control-Allow-Origin: $origin");
|
|
header("Access-Control-Allow-Credentials: true");
|
|
header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");
|
|
header("Access-Control-Allow-Headers: Content-Type, Authorization");
|
|
|
|
// Preflight запрос
|
|
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
|
|
http_response_code(200);
|
|
exit;
|
|
}
|
|
|
|
// Игнорируем запросы к favicon.ico и другим статическим файлам
|
|
$requestUri = $_SERVER['REQUEST_URI'] ?? '';
|
|
if (preg_match('/\.(ico|png|jpg|jpeg|gif|css|js|svg|woff|woff2|ttf|eot)$/i', $requestUri)) {
|
|
http_response_code(404);
|
|
exit;
|
|
}
|
|
|
|
|
|
handleRouting($routes);
|
|
|
|
?>
|