Usando um serviço de verniz existente para outro servidor

1

Neste caso, ter um servidor que execute alguns sites com um serviço de verniz configurado também.

Agora, em outro servidor eu executo 2 wp multisites em um ambiente LAMP + W3TC Cache + APC, e agora eu quero configurar meu primeiro servidor para servir como proxy reverso para ele.

e eu me perguntando se isso funcionaria:

acl whitelist {
        "localhost";
        "127.0.0.1";
        "ip server with varnish";
        "ip wordpress server";
}

sub vcl_recv {
    if ( ! client.ip ~ whitelist) {
       error 403 "Access denied";
    }

Antes de iniciar o teste, como tenho pouca experiência com o Varnish, gostaria de ouvir sua opinião sobre a configuração da ACL do meu servidor VCL para permitir essa solicitação de servidores externos

UPDATE

Apenas para apontar, o Apache responde à porta 8080 e ao Varnish a 80.

padrão / verniz

DAEMON_OPTS="-a ip-server-1:80 \
             -T localhost:6082 \
             -f /etc/varnish/main.vcl \
             -S /etc/varnish/secret \
             -s file,/var/lib/varnish/$INSTANCE/varnish_storage.bin,1G"
    
por w0rldart 03.04.2013 / 05:24

1 resposta

2

O que você adicionou garantirá que ninguém, exceto os hosts fornecidos, consiga enviar uma solicitação para os servidores por trás dela.

Em vez disso, você pode verificar facilmente o host solicitado e fazer com que o verniz envie as solicitações de back-end para o servidor certo com algo parecido com esse pequeno exemplo;

backend server1 {
        .host = "127.0.0.1";
        .port = "81";
}

backend server2 {
        .host = "192.168.0.1";
        .port = "80";
}

sub vcl_recv {

    if (req.http.host ~ "www.domain1.com") {
        set req.backend = server1;   
    }

    if (req.http.host ~ "www.domain2.com") {
        set req.backend = server2;
    }

}
    
por 03.04.2013 / 22:40