재우니의 블로그


캐시 부분을 global.asax 에서 처리했는데요. 이 부분이 ie 에서 https 를 통해 web font  을 다운로드 받은 다음, 다시 ie 를 새로고침을 누르면 호출이 안되는 부분이 발생합니다. 

http://aspdotnet.tistory.com/1880


위의 global.asax 에서 구현한 부분을 주석 처리하고, 아래와 같이 OnActionExecuting 이벤트 핸들러를 통해 처리가 가능합니다.

asp.net mvc 에서 상속 클래스 하나 만들어서 아래 코드를 넣으면 모든 페이지에서 작동이 되며, 브라우저 캐시를 사용하지 않게 처리 해 줄 겁니다.


/// <summary>
        /// 초기화
        /// </summary>
        /// <param name="filterContext">현재 요청 및 작업에 대한 정보입니다.</param>
        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            base.OnActionExecuting(filterContext);

            Response.Cache.SetCacheability(HttpCacheability.NoCache);  // HTTP 1.1.
            Response.Cache.AppendCacheExtension("no-store, must-revalidate");
            Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.0.
            Response.AppendHeader("Expires", "0"); // Proxies.            
            Response.Cache.SetExpires(DateTime.UtcNow.AddHours(-1));
            Response.Cache.SetNoStore();
        }