2017-12-25 38 views
0

나는 인터넷에 가서 캐싱에 대한 모든 가능한 설정을했지만 Google 페이지의 끝 부분에있는 똑같은 통찰력을 통해이 파일들을 캐싱하지 못한다고 썼다. 활용 방법 브라우저 캐싱 nginx를 사용 하시겠습니까?

Shiw picture

내 캐시 설정 "나노 /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 "등 나노//의 nginx/사이트 사용/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; 

답변

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 
+0

그래 사람, 내가 당신의 고통을 느낄 로컬 스토리지에서 읽을 수 있도록하는 것을 잊지 마세요! 또한 고칠 수 없어 고마워.) –

+0

@JaneDow 나는 당신에게 같은 것을 갚아 주어서 기쁩니다.)) 당신이 많이 도왔고, 그래서 당신을 도왔습니다.)) – InvictusManeoBart