set([ 'open_http2_protocol' => true, 'document_root' => __DIR__ . '/../public', 'enable_static_handler' => true, 'timeout' => 4, ]) ; $http->on('WorkerStart', function($serv, $workerId) { Console::success('Worker '.$workerId.' started succefully'); }); $http->on('BeforeReload', function($serv, $workerId) { Console::success('Starting reload...'); }); $http->on('AfterReload', function($serv, $workerId) { Console::success('Reload completed...'); }); $http->on('start', function (Server $http) { Console::success('Server started succefully'); printf("master pid %d, manager pid %d\n", $http->master_pid, $http->manager_pid); // listen ctrl + c Process::signal(2, function () use ($http) { echo "Stop by Ctrl+C\n"; $http->shutdown(); }); }); $register = new Registry(); $utopia = new App('Asia/Tel_Aviv'); /** * @var $request Request */ $request &= null; $response &= null; include 'init.php'; include 'app.php'; $http->on('request', function (SwooleRequest $swooleRequest, SwooleResponse $swooleResponse) { global $request, $response, $utopia; $request = new Request($swooleRequest); $response = new Response($swooleResponse); try { $utopia->run($request, $response); } catch (\Throwable $th) { var_dump($th->getMessage()); var_dump($th->getFile()); var_dump($th->getLine()); $swooleResponse->end('error: '.$th->getMessage()); } }); $http->start();