philippurbschat.de/philcore/public/index.php

32 lines
No EOL
880 B
PHP

<?php
/**
* PhilCore Entry Point
*/
error_reporting(E_ALL);
ini_set('display_errors', 1);
if (file_exists(__DIR__ . '/../app/init.php')) {
require_once __DIR__ . '/../app/init.php';
} else {
die("Kritischer Fehler: app/init.php wurde nicht gefunden.");
}
try {
// Router starten
$router = new Router();
$router->route();
} catch (Exception $e) {
// Fehler abfangen und hübsche Error-View laden
http_response_code(404);
// In Produktion zeigen wir keine genauen Fehlermeldungen an
$errorMessage = Config::get('APP_ENV') === 'development' ? $e->getMessage() : 'Seite nicht gefunden oder Zugriff verweigert.';
$errorView = __DIR__ . '/../views/error.php';
if(file_exists($errorView)) {
require_once $errorView;
} else {
echo "<h1>Systemfehler</h1><p>" . htmlspecialchars($errorMessage) . "</p>";
}
}