index.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. // CONFIG
  3. define('APP_DIR', realpath(__DIR__ . '/..'));
  4. define('VENDOR_DIR', APP_DIR . '/vendor');
  5. // AUTOLOAD
  6. $loader = require VENDOR_DIR . '/autoload.php';
  7. $loader->setPsr4('App\\', APP_DIR . '/src');
  8. use \KarmaFW\App;
  9. use \KarmaFW\App\Request;
  10. use \KarmaFW\App\Response;
  11. use \KarmaFW\App\Middlewares as KarmaMiddlewares;
  12. ini_set('display_errors', 1);
  13. // Build request
  14. $request = Request::createFromGlobals();
  15. // Init App and Define workflow
  16. $app = new App([
  17. new KarmaMiddlewares\TrafficLogger,
  18. new KarmaMiddlewares\ErrorHandler,
  19. new KarmaMiddlewares\ResponseTime,
  20. new KarmaMiddlewares\ForceHttps,
  21. //new KarmaMiddlewares\GzipEncoding,
  22. //new KarmaMiddlewares\MaintenanceMode,
  23. new KarmaMiddlewares\SessionHandler,
  24. //'handle404',
  25. //'Authentification',
  26. //'CacheHtml',
  27. //new KarmaMiddlewares\UrlPrefixRouter,
  28. //new KarmaMiddlewares\CommandRouter($argv),
  29. new KarmaMiddlewares\UrlRouter,
  30. ]);
  31. // Process App workflow/pipe and return a $response
  32. $response = $app->handle($request);
  33. // Send $response->content to the client (browser or stdout)
  34. $response->send();