如何修复Leverage浏览器缓存nginx?

时间:2017-12-25 06:55:13

标签: caching nginx browser-cache

我去了互联网,把所有可能的设置都用于缓存,但谷歌页面结束的所有相同的见解写道,我没有缓存这些文件如何解决这个问题?

Shiw picture

我的缓存设置“nano /etc/nginx/nginx.conf”

 proxy_temp_path /var/nginx/proxy_temp;
 add_header X-Cache-Status $upstream_cache_status;
 proxy_cache_path /tmp/nginx/cache levels=1:2 keys_zone=one:100m;
 proxy_cache one;
 proxy_cache_valid any 30d;
 proxy_cache_key $scheme$proxy_host$request_uri$cookie_US;

我的服务器conf“nano / etc / nginx / sites-enabled / theband”

location ~* ^(?!/media).*.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
    expires 365d;
    add_header Cache-Control "public, must-revalidate, proxy-revalidate";
    access_log off;
}
location ~* ^(?!/static).*.(?:css|js|html)$ {
    expires 365d;
    add_header Cache-Control "public, must-revalidate, proxy-revalidate";
    access_log off;
}

location / {
    proxy_set_header X-Real-IP $remote_addr;

    proxy_cache one;
    proxy_cache_min_uses 1;
    proxy_cache_use_stale error timeout;

2 个答案:

答案 0 :(得分:1)

我通过移动服务器块的过期时间来解决此问题

server {
    expires 35d;
    ...
}

到父http块

http {
    expires 35d;
    ...
}

“上下文:http,服务器,位置,如果在位置”表明它可以驻留在这些块中。不知道为什么我的服务器或位置无法正常工作。 http://nginx.org/en/docs/http/ngx_http_headers_module.html?&_ga=2.49684582.1104146524.1536596059-1026560835.1535666041#expires

答案 1 :(得分:0)

"到期35d;"此行需要从您定义的位置删除,以创建文件的存储。

从这里开始:

   location ~* ^(?!/media).*.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
        root /tmp/nginx/trash/trash_media;
        expires 35d; # REMOVE THISSSSSSSS
        add_header Pragma public;
        add_header Cache-Control "public, must-revalidate, proxy-revalidate";
        access_log off;
    }

到这里:

server {

    listen   80;
    server_name myip;
    expires 35d;
    client_max_body_size 4G;
  

它会起作用,尽管在所有绝对的例子中,你都没有   需要把存储时间放在那里!!!!!!

也不要忘记允许从网络接受数据并写入并从本地存储中读取

sudo chown www-data /tmp/nginx/proxy_temp
sudo chmod 700 /tmp/nginx/proxy_temp
sudo chown www-data /tmp/nginx/cache
sudo chmod 700 /tmp/nginx/cache
sudo chown www-data /tmp/nginx/cache2
sudo chmod 700 /tmp/nginx/cache2