2017-03-27 7 views
1

CSS 또는 javascript 파일을 변경 한 다음 프로덕션으로 보내면 클라이언트 브라우저에서 변경 사항을 가져 오지 않는 한 Ctrl + F5 새로 고침. 저는 수천 명의 사용자가있는 학교 시스템에서 일하므로,이를 알기가 쉽지 않습니다. 또는 변경을 할 때가 있습니다.버전 관리와 BundleConfig.cs를 함께 사용하는 방법

필자는 계속 읽었으며 의견 일치는 파일 끝에 "java.js? v = 1.0"으로 보입니다. 내 웹 사이트는 번들링을 사용하고 있으며, 내가 옳은 일을하고 있다고 생각하지 않습니다. 이 파일을 .cs config 파일의 끝에 추가하려고하면 사이트를 밀어 넣을 때 참조 파일이 더 이상 인식되지 않습니다.

예를 들어, 그는 내가 번들하고있어 파일의 목록입니다 : 당신이 볼 수 있듯이

  bundles.Add(new ScriptBundle("~/bundles/utilitiesJs").Include(
      "~/Scripts/jquery-{version}.js", 
      "~/Scripts/jquery.dynatable.js", 
      "~/Scripts/js-cookie.js", 
      "~/Scripts/bootstrap.js", 
      "~/Scripts/bootstrap-multiselect.js", 
      "~/Scripts/bootstrap-toolkit.min.js", 
      "~/Scripts/common.js?v=1.0", 
      "~/Scripts/dropdown.js?v=1.0", 
      "~/Scripts/waitingFor.js", 
      "~/Scripts/analytics.js")); 

내가 common.js를하고 dropdown.js의 말에은 "V = 1.0"을 추가했다.

<script src="/DMC/Scripts/jquery-3.1.1.js"></script> 
<script src="/DMC/Scripts/jquery.dynatable.js"></script> 
<script src="/DMC/Scripts/js-cookie.js"></script> 
<script src="/DMC/Scripts/bootstrap.js"></script> 
<script src="/DMC/Scripts/bootstrap-multiselect.js"></script> 
<script src="/DMC/Scripts/bootstrap-toolkit.min.js"></script> 
<script src="/DMC/Scripts/waitingFor.js"></script> 
<script src="/DMC/Scripts/analytics.js"></script> 

누군가가 내가 잘못는지 말해 주시겠습니까 : 나는 webstie에 나가서 페이지 소스를 볼 때 포함에서 이러한 파일은 단순히 누락? 공통 파일과 드롭 다운 파일 등의 이름을 변경해야합니까? 현재 common.js 및 dropdown.js로 간단히 이름을 지정했습니다.

제공 할 수있는 도움이 있으면 대단히 감사하겠습니다.

+0

업데이트 : 내가 한 것은 더 표준적인 규칙을 따르는 것입니다. 파일을 common-1.0.js로 이름을 바꿨으며 번들에서 특정 이름을 참조하고 있습니다. 앞으로 js 파일을 변경할 때마다 버전 번호를 높이고 번들에 들어가서 버전을 업데이트하는 것을 잊지 마십시오. –

답변

0

효율적인 것은 아니지만 페이지 수준에서 캐싱을 사용하지 않도록 설정했거나 작은 캐시 창을 설정하려고 시도 했습니까?

또한 브라우저와 서버가이를 지원하면 제어 된 환경에서 HTTP/2가 실제로 가능합니다. 번들링과 같은 것은 문제가되지 않습니다.