Workerman PHP
/pixel.gif 요청에 빈 GIF로 응답하는 Workerman용 PHP 스니펫입니다. GIF는 시작할 때 한 번만 디코딩합니다.
Workerman PHP
<?php
use Workerman\Connection\TcpConnection;
use Workerman\Protocols\Http\Request;
use Workerman\Protocols\Http\Response;
use Workerman\Worker;
require __DIR__ . '/vendor/autoload.php';
$gif = base64_decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
$worker = new Worker('http://0.0.0.0:8080');
$worker->onMessage = function (TcpConnection $connection, Request $request) use ($gif) {
if ($request->path() !== '/pixel.gif') {
$connection->send(new Response(404));
return;
}
$connection->send(new Response(200, [
'Content-Type' => 'image/gif',
'Cache-Control' => 'no-store',
], $gif));
};
Worker::runAll();
이 스니펫은 실행해 보고, 반환된 바이트를 비교했습니다.
확인
curl -sI http://localhost:8080/pixel.gif