Я хочу, чтобы перенаправить все запросы .png на запросы .jpg в лаковом VCL Примере: http://example.com/images/boy.png (или .png) в http://example.com/images/boy.jpg в лаковой VCLПеренаправление всех запросов в формате PNG как JPG запросы в лаковых
-1
A
ответ
1
Там может быть 2 случая.
A. Клиент Перенаправление [1], используйте это в случае, если вы хотите, чтобы сказать браузер клиента о том, что изображение было перемещено:
sub vcl_recv {
# ...
if (req.url ~ "(?i)\.png$") {
error 750 "http://" + req.host + regsub(req.url, "(?i)\.png$", ".jpg$");
}
# ...
}
sub vcl_error {
# ...
if (obj.status == 750) {
set obj.http.Location = obj.response;
set obj.status = 302;
return(deliver);
}
# ...
}
B. На стороне сервера переписан [2], используйте это в случае, если хотите внутренне изменить запрос, не говоря клиенту:
sub vcl_recv {
# ...
if (req.url ~ "(?i)\.png$") {
set req.url = regsub(req.url, "(?i)\.png$", ".jpg$");
}
# ...
}
PD: Пожалуйста, не дублировать ваши вопросы
[1] https://www.varnish-cache.org/trac/wiki/VCLExampleRedirectInVCL
[2] https://www.varnish-cache.org/trac/wiki/RedirectsAndRewrites