Ativar o cache para o proxy NGINX

1

Eu tentei seguir este tutorial para armazenar solicitações em cache contra yt3.ggpht.com .

Minha configuração parece:

proxy_cache_path /tmp/nginx levels=1:2 keys_zone=my_zone:10m inactive=60m;
proxy_cache_key "$scheme$request_method$host$request_uri";

server {
    listen 80 default_server;

    location / {
        proxy_cache my_zone;
        add_header X-Proxy-Cache $upstream_cache_status;

        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        include proxy_params;
        proxy_pass https://yt3.ggpht.com;
    }
}

Se eu executar o link no meu servidor local, yt3.ggpht.com retornará:

The requested URL /-C9gaunpPNo8/VYGWj4xT-uI/AAAAAAAAAGo/pUPfpvLF7Dc/w2120-fcrop64=1-nd-c0xffffffff-rj-k-no/ was not found on this server. That’s all we know.

Se eu remover a linha proxy_set_header Host $http_host; , minhas solicitações serão aprovadas, mas o armazenamento em cache não funcionará.

Por que isso não funciona se eu definir Host (se eu executar solicitações em outro servidor remoto dummy-ngnix).

E também, por que o parâmetro Host é necessário para ativar o armazenamento em cache?

    
por nik 09.03.2017 / 19:10

0 respostas

Tags