ReactPHP PHP
/pixel.gif 요청에 빈 GIF로 응답하는 ReactPHP용 PHP 스니펫입니다. GIF는 시작할 때 한 번만 디코딩합니다.
ReactPHP PHP
<?php
use Psr\Http\Message\ServerRequestInterface;
use React\Http\HttpServer;
use React\Http\Message\Response;
use React\Socket\SocketServer;
require __DIR__ . '/vendor/autoload.php';
$gif = base64_decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
$http = new HttpServer(function (ServerRequestInterface $request) use ($gif) {
if ($request->getMethod() !== 'GET' || $request->getUri()->getPath() !== '/pixel.gif') {
return new Response(Response::STATUS_NOT_FOUND);
}
return new Response(Response::STATUS_OK, [
'Content-Type' => 'image/gif',
'Cache-Control' => 'no-store',
], $gif);
});
$http->listen(new SocketServer('0.0.0.0:8080'));
이 스니펫은 실행해 보고, 반환된 바이트를 비교했습니다.
확인
curl -sI http://localhost:8080/pixel.gif