글 수 367
캐쉬의 보존 기간을 컨트롤 하기위한 설정입니다.
자주 업데이트 되는 콘텐츠는 짧게, 이미지 파일 등은 별로 변하지 않기 때문에 길게하거나합니다.
기본 설정
refresh_pattern 1 [- i] regex · · 2 min · · 3 percent · · 4 max · · 5 [options] · · 6
- 정규식 을 사용하여 설정되는 파일 (패턴)을 지정합니다. 기본 은 대 / 소문자를 구분하므로 비활성화하려면 - i 옵션 을 사용한다.
- 단위는 분. 저장 시간 (캐시 서버 에서 캐시되는 시간)이 설정 값 이하의 경우는 (아직 새롭기 때문에) 캐시 개체 를 반환한다.
- 단위는 %. "(캐시 서버에서) 저장 시간 ÷ (원래 서버에서) 만들기 또는 변경에서 경과 시간"이 설정 값보다 작은 경우, 새로운 간주하고 캐시 개체를 반환한다.
- 단위는 분. 저장 시간이 설정보다 긴 경우 (또 오래된 때문에) 원래 서버로부터 새 복사본을 검색하여 반환한다.
- 기타 옵션 설정
옵션 설정
캐시 관련 HTTP 헤더 (Expires, Last - modified)을 무시하는 설정이라고 생각하면 좋겠다.
- 캐시 저장 시간 설정을 간단하게하기 위해 다음 항목은 모두 부여하는 경우가 많습니다. 백 엔드 서버에 의존하면 언제 캐시가 만료 또는 알 힘들어하고 아니라서.
- 이 설정을하면 백 엔드 서버보다받은 HTTP 응답 헤더를 제거하여 브라우저에 닿지 않는 것은 아닌지? 걱정이 될지도 모르지만,별로 제거되는 것은 아니고, 어디 까지나, Squid 자신의 캐시 제어시 고려되지 않을뿐입니다.
옵션 항목 | 내용 |
---|---|
override - expire | 백 엔드 서버에서 "Expires"헤더를 무시한다. ※ Squid 는 Expires 캐시 유효성 확인 |
override - lastmod | 백 엔드 서버에서 "Last - modified"헤더를 무시한다. ※ Squid 는 Last - modified 캐시 유효성 확인 |
ignore - reload | 브라우저에서 " Cache - Control "또는"Pragma "헤더의 no - cache (백 엔드 서버에서 다시로드) 지정이있어도 무시한다. 캐시가 있으면 그것을 반환한다. |
ignore - no - cache | 백 엔드 서버에서 no - cache (캐쉬 금지) 지정이있어도 상관없이 캐시한다. |
ignore - no - store | 위와 동일 |
ignore - private | 백 엔드 서버에서 "Cache - Control"헤더를 통한 private (같은 캐시 금지) 지정이있어도 상관없이 캐시한다. |
[참고 URL]
Leverage OSS : Squid 업데이트 패턴에서 인터넷 속도 (1 / 2) - ITmedia 엔터 프라이즈
Kazuho @ Cybozu Labs : 캐시 능숙한 사용법
설정 예제
refresh_pattern (& nocache = 1) 0 100 % 0 옵션 설정 설명은 생략 1 * 1 refresh_pattern (\? nocache = 1) 0 100 % 0 옵션 설정 설명은 생략 2 refresh_pattern (/ cgi /) 0 100 % 0 옵션 설정 설명은 생략 3 refresh_pattern (realtime.co.jp) 1 100 % 1 옵션 설정 설명은 생략 4 refresh_pattern 5 100 % 5 옵션 설정 설명은 생략 5
- 개발자 테스트 ??매개 변수 를 만들어 그 매개 변수가 부여되는 경우 (캐시 시간이 0이므로) 캐시되지 않습니다.
- Ibid. 매개 변수 부여된 분이 다를뿐.
- 특정 경로의 경우에는 캐시하지 않습니다.
- 특정 도메인에만 캐시 시간을 1 분으로한다. 멀티 도메인 사이트에서 실시간성이 높은 도메인의 경우.
- 그렇지 내용은 5 분 동안 캐시합니다.