2016-11-02 5 views
0

저는 Nginx에 매우 익숙하며 NGINX 세계에서 이와 같은 것이 가능한지 이해하려고합니다. 우리는 기존 웹 애플리케이션에서 NGINX 정적 페이지 캐싱을 설정하려고하지만 특정 쿠키 값을 기반으로 페이지를 캐싱하려고합니다. 예를 들어쿠키 값을 기반으로 한 Nginx 캐시 페이지

: 들어오는 요청이 값을 "123"로 XYZ라는 쿠키가있는 경우

만 우리는 3 시간 만 말할 수 있습니다 해당 페이지를 캐시하고 싶습니다. 그렇지 않다면 캐시하지 않을 것입니다.

NGINX에서 이와 유사한 기능을 사용할 수 있습니까? 그렇다면 도움을 줄 수 있습니까?

미리 감사드립니다.

답변

2

예, 가능합니다. 생각보다 조금 다른 방식으로 작동합니다.

먼저 캐싱을 설정합니다 (예 : proxy_cache).

그런 다음 당신은 map와 쿠키 값을 매핑 :

location /somelocation { 
    proxy_cache_bypass $bypass; 
    ... 
} 
:

map $cookie_XYZ $bypass { 
    '123' 0; 
    'default' true; 
} 

이 그럼 당신은 (쿠키가없는 요청) 캐싱을 우회하기 위해이 값을 사용할 수 있습니다