32 lines
No EOL
880 B
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>";
|
|
}
|
|
} |