Может ли кто-нибудь посоветовать VCL conf, который перенаправляет (внутри LAN и LAN DNS) для доступа к нескольким именованным хостам?
т.е. http://x.ourdomain.com = IP сервера Varnish = перенаправляет на хост LAN (например, 10.0.5.1) http://y.ourdomain.com = IP сервера Varnish = перенаправляет на хост LAN (например, 10.0.5.5) и т. Д.
Я был в лаке около 5 часов, и небольшая часть моего мозга уже умерла.
sub vcl_recv {
set req.backend = default_backend;
if ( req.http.Host == "x.ourdomain.com" ) {
set req.backend = x_backend;
}
if ( req.http.Host == "y.ourdomain.com" ) {
set req.backend = y_backend;
}
}
Если вы не ищете настоящих перенаправляет, в таком случае:
sub vcl_recv {
if ( req.http.Host == "x.ourdomain.com" ) {
error 750 "http://10.0.5.1" + req.url;
}
if ( req.http.Host == "y.ourdomain.com" ) {
error 750 "http://10.0.5.5" + req.url;
}
}
sub vcl_error {
if ( obj.status == 750 ) {
set obj.http.Location = obj.response;
set obj.status = "302";
set obj.response = "Found";
return(deliver);
}
}