NGINX X-Cache-Status всегда значения MISS и Double Pragma Header - PullRequest
0 голосов
/ 25 марта 2019

Я пытаюсь настроить сервер NGINX для кэширования моих файлов.Однако файлы все еще имеют заголовок «Pragma: no-cache», несмотря на мои настройки.Я полагаю, что именно это заставляет все заголовки X-Cache-Status переходить в MISS.

CURL OUTPUT Это показывает два заголовка для Pragma, что, как я полагаю, вызывает этоX-Cache-Status для получения MISS.

Моя конфигурация кажется правильной, что-то не так?Я что-то пропустил?Я также могу предоставить свой nginx.conf при необходимости.Большое спасибо за помощь.

server {
    listen 80;
    # Redirect www to non-www
    if ( $host ~ ^www\.(?<domain>.+) ) {
       rewrite ^/(.*)$ $scheme://$domain/$1;
    }
    rewrite ^(.*) https://$host$1 permanent;
}

server {

 listen *:443;

 server_name example.com *.example.com; # edit this to your domain
 
    # SSL config
    ssl on;
    ssl_certificate /root/ssl/m
    ssl_certificate_key /root/ssl/   #these are all edited for stackoverflow.


 location / {
    proxy_cache edge-cache;
  	proxy_pass http://example.com/;
	proxy_cache_key $scheme$host$proxy_host$request_uri;
  	proxy_redirect https://example.com/ https://example.com/;

   	proxy_http_version 1.1;
	proxy_set_header Connection "";
        proxy_cache_valid 15m; 
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_cache_revalidate on; 
 
        proxy_connect_timeout       300;
        proxy_send_timeout          300;
        proxy_read_timeout          300;
        send_timeout                300;
 
            add_header X-Handled-By $proxy_host;


            add_header Pragma "cache";
            add_header Cache-Control "max-age=604800, public";

   	proxy_buffering off;
   	proxy_set_header Host $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-Host $host;
        proxy_hide_header Set-Cookie;
        proxy_hide_header Cache-Control;
        proxy_ignore_headers X-Accel-Expires;
        proxy_ignore_headers Expires;
        proxy_ignore_headers Cache-Control;
        proxy_ignore_headers Set-Cookie;
        add_header X-Cache-Status $upstream_cache_status;

  	client_max_body_size 10m;
  	client_body_buffer_size 128k;

        access_log off;
        log_not_found off;
        expires 30d;
 }


 
 
 access_log /var/log/nginx/access.log;
 error_log /var/log/nginx/error.log;

}
...