Я пытаюсь настроить сервер 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;
}