[英]how to fix Leverage browser caching nginx?
我去了互聯網,將所有可能的設置用於緩存,但是在google頁面末尾的所有洞察都一樣,我見識到我沒有為這些文件緩存如何解決此問題?
我的緩存設置“ 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;
我的服務器配置文件“ 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;
我通過移動服務器塊過期來解決此問題
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
“ 35天到期;” 此行需要從定義它的位置刪除以創建文件存儲。
從這里:
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.