다음을 통해 공유


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

업데이트: 2007년 11월

페이지 또는 사용자 정의 컨트롤의 캐시 가능성은 응답 주기 동안 장치에서 페이지를 캐시할 수 있는지 여부를 나타냅니다. 이러한 장치에는 요청하는 클라이언트(브라우저), 요청에 응답하는 웹 서버, 요청/응답 스트림의 캐시 가능 장치(예: 프록시 서버) 등이 있습니다.

디자인 타임에 페이지에 필요한 캐시 가능성 설정을 알고 있으면 선언적으로 캐시 가능성을 설정할 수 있습니다. 그러면 페이지에서는 모든 요청에 대해 동일한 캐시 가능성 설정을 사용합니다. 자세한 내용은 페이지의 캐시 가능성 설정을 참조하십시오.

페이지의 캐시 가능성을 선언적으로 설정하려면

  1. 페이지에 @ OutputCache 지시문을 포함하고 DurationVaryByParam 특성을 정의합니다.

  2. @ OutputCache 지시문에 Location 특성을 포함하고 이 특성의 값을 OutputCacheLocation 열거형의 Any, Client, Downstream, Server, ServerAndClient 또는 None 값 중 하나로 정의합니다.

    다음 코드에서는 페이지의 캐시 가능성을 60초로 설정하는 방법을 보여 줍니다.

    <%@ OutputCache Duration="60" VaryByParam="None"%>
    
    참고:

    기본 설정은 Any입니다. Location 특성을 정의하지 않으면 응답에 관련된 모든 캐시 가능 네트워크 장치에서 페이지 출력을 캐시할 수 있습니다. 여기에는 요청 클라이언트, 원래 서버 및 응답이 통과하는 모든 프록시 서버가 해당됩니다.

캐시 프로필을 사용하여 페이지의 캐시 가능성을 선언적으로 설정하려면

  1. 응용 프로그램의 Web.config 파일에서 캐시 프로필을 정의하고 이 프로필에 duration 및 varyByParam 설정을 포함합니다.

    다음 <caching> 구성 요소에서는 서버의 페이지를 30초 동안 캐시할 Cache30Seconds라는 캐시 프로필을 정의합니다.

    <caching>
      <outputCacheSettings>
        <outputCacheProfiles>
          <add name="Cache30Seconds" duration="30" 
            varyByParam="none" />
        </outputCacheProfiles>
      </outputCacheSettings>
    </caching>
    
  2. 프로필을 사용하는 각 ASP.NET 페이지에 @ OutputCache 지시문을 포함하고 CacheProfile 특성을 Web.config 파일에 정의된 캐시 프로필 이름으로 설정합니다.

    다음 코드에서는 Cache30Seconds라는 캐시 프로필을 페이지에 사용해야 함을 지정합니다.

    <%@ OutputCache CacheProfile="Cache30Seconds" %>
    

참고 항목

작업

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

개념

ASP.NET 페이지 캐싱

ASP.NET 페이지 캐싱

페이지의 캐시 가능성 설정