diff --git a/public/worker.php b/public/worker.php new file mode 100644 index 0000000..4b392a3 --- /dev/null +++ b/public/worker.php @@ -0,0 +1,29 @@ +boot(); + +$handler = static function () use ($kernel): void { + $request = Request::createFromGlobals(); + $response = $kernel->handle($request); + $response->send(); + $kernel->terminate($request, $response); +}; + +$maxRequests = (int) ($_SERVER['MAX_REQUESTS'] ?? 0); +$requestCount = 0; + +while (\frankenphp_handle_request($handler)) { + if ($maxRequests > 0 && ++$requestCount >= $maxRequests) { + break; + } +} + +$kernel->shutdown();