emptygif
Язык: Русский

Все языки и фреймворки

Varnish (VCL synthetic) VCL

Пример на VCL для Varnish (VCL synthetic), который отвечает на запросы к /pixel.gif пустым GIF, декодированным один раз при запуске.

Varnish (VCL synthetic) VCL

Файл
default.vcl
Запуск
varnishd -f /etc/varnish/default.vcl -a :8080
vcl 4.1;

import blob;

backend default none;  # or your real backend

sub vcl_recv {
    if (regsub(req.url, "\?.*$", "") == "/pixel.gif") {
        return (synth(200, "OK"));
    }
}

sub vcl_synth {
    if (resp.status == 200 && regsub(req.url, "\?.*$", "") == "/pixel.gif") {
        set resp.http.Content-Type = "image/gif";
        set resp.http.Cache-Control = "no-store";
        set resp.body = blob.decode(BASE64, encoded="R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==");
        return (deliver);
    }
}

Мы запустили этот пример и сравнили байты, которые он вернул.

Проверка

curl -sI http://localhost:8080/pixel.gif

Официальный сайт: Varnish (VCL synthetic)