다음을 통해 공유


여러 버전의 페이지 캐싱

업데이트: 2007년 11월

요청에 따라 다른 버전이 만들어지는 페이지를 캐시할 수도 있습니다. 쿼리 문자열에 전달된 값에 따라 출력 결과가 다른 페이지를 예로 들 수 있습니다.

ASP.NET을 사용하면 같은 페이지의 여러 버전을 출력 캐시에 캐시할 수 있습니다. 출력 캐시는 다음과 같은 요소에 따라 달라질 수 있습니다.

  • 초기 요청(HTTP GET)의 쿼리 문자열

  • 다시 게시할 때 전달된 컨트롤 값(HTTP POST 값)

  • 요청과 함께 전달된 HTTP 헤더

  • 요청하는 브라우저의 주 버전 번호

  • 페이지의 사용자 지정 문자열. 이 경우에는 Global.asax 파일에서 사용자 지정 코드를 만들어 페이지의 캐싱 동작을 지정합니다.

@ OutputCache 지시문의 특성을 사용하여 선언적으로 또는 HttpCachePolicy 클래스의 속성과 메서드를 사용하여 프로그래밍 방식으로 여러 버전의 페이지 출력을 캐시할 수 있습니다.

@ OutputCache 지시문에는 다음과 같이 여러 버전의 페이지 출력을 캐시하는 데 사용할 수 있는 네 가지 특성이 있습니다.

  • VaryByParam 특성을 사용하면 캐시된 출력을 쿼리 문자열에 따라 변경할 수 있습니다.

  • VaryByControl 특성을 사용하면 캐시된 출력을 컨트롤 값에 따라 변경할 수 있습니다.

  • VaryByHeader 특성을 사용하면 캐시된 출력을 요청의 HTTP 헤더에 따라 변경할 수 있습니다.

  • VaryByCustom 특성을 사용하면 캐시된 출력을 정의된 사용자 지정 문자열 또는 브라우저 종류에 따라 변경할 수 있습니다.

    참고:

    @ OutputCache 지시문에는 VaryByParam 또는 VaryByControl 특성을 포함해야 합니다. 그러나 캐시된 출력을 컨트롤이나 매개 변수에 따라 변경할 필요가 없는 경우에는 VaryByParam 특성을 정의할 때 값을 None으로 설정하면 됩니다.

HttpCachePolicy 클래스는 선언적으로 설정할 수 있는 캐시 구성과 동일한 구성을 프로그래밍 방식으로 지정하는 데 사용할 수 있는 속성 두 개와 메서드 하나를 제공합니다. VaryByParams 속성과 VaryByHeaders 속성을 사용하면 캐시 정책의 변경 기준으로 사용할 쿼리 문자열 매개 변수와 헤더 이름을 각각 지정할 수 있습니다. SetVaryByCustom 메서드를 사용하면 출력 캐시의 변경 기준으로 사용할 사용자 지정 문자열을 정의할 수 있습니다.

참고 항목

작업

방법: 선언적으로 ASP.NET 페이지의 캐시 가능성 설정

방법: 프로그래밍 방식으로 페이지의 캐시 가능성 설정

방법: 요청 브라우저를 사용하여 여러 버전의 페이지 캐시

방법: 매개 변수를 사용하여 여러 버전의 페이지 캐싱

방법: HTTP 헤더를 사용하여 여러 버전의 페이지 캐시

방법: 사용자 지정 문자열을 사용하여 여러 버전의 페이지 캐싱

개념

ASP.NET 페이지 캐싱

페이지의 캐시 가능성 설정