2013-04-22 1 views
0

Jquery 라이브러리, 이미지 및 기타 JS 파일과 같은 정적 파일이있는 웹 사이트가 있습니다.설정 만료 및 캐시 제어 설정 방법 : ASP.NET에서만 이미지의 최대 사용 기간 헤더?

그래서, 쉽게 사용자에서 검색 할 수 있습니다 사람들은 캐시 있도록 특별히 해당 자원에 대한 만료 시간을 설정하고자 및 기타 정적 리소스

를 캐싱하지 않고 는

은 아무도 asp.net 3.5에서 그렇게 할 수있는 방법을 제안 할 수 있습니다?

는 감사

답변

1

당신은 폴더에서이 정적 파일을 분리하고

여기 IIS6에 대한 예입니다 IIS에 직접 구성해야합니다

http://www.websiteoptimization.com/secrets/advanced/9-7-content-expiration-IIS.html

또는 코드를 통해 당신은을 구현할 수 있습니다 IHttpModule

public class CacheExpiresModule : IHttpModule 
{ 
    public void Dispose() { } 

    public void Init(HttpApplication context) 
    { 
     context.BeginRequest += new EventHandler(context_BeginRequest); 
    } 

    void context_BeginRequest(object sender, EventArgs e) 
    { 
     HttpContext context = HttpContext.Current; 
     string url = context.Request.Url.ToString(); 

     if (url.Contains("/Static/")) 
     { 
      context.Response.Cache.SetExpires(DateTime.Now.AddYears(30)); 
      context.Response.Cache.SetMaxAge(TimeSpan.FromDays(365)); 
     } 
    } 
} 

web.config에서 구성하십시오.

+2

당신을 감사합니다, 그러나 뒤에 코드 또는 Web.config의에서 할 수있는 방법이있다 (이미지 만 이미지를 캐싱 등을 위해). – kishor

+0

IHttpModule이 문제를 해결 했습니까? –

+0

내가 링크에서 제안하는 방식으로 적용, 모든 정적 리소스 cached.it doe 특정 폴더 containg 정적 resourecs에 대해 구성하는 방법을 알려주지 않을 것이라고 생각 – kishor

관련 문제