2016-12-15 3 views
2

Umbraco 7의 사용자 정의 속성 편집기를 작성하고 있습니다. controller.js에 오타가 있었고 캐시를 지우는 작업에도 불구하고 손상된 코드가 캐시 된 종속성 처리기에 계속 표시됩니다 지금까지 나는 시도했다 :Umbraco는 캐시에서 깨진 코드를 지우지 않습니다.

  • 은 Umbraco 사이트 변경 디버그 = "false"를 디버깅하려면 = "true"를 Web.config의 변화
  • 지우기 브라우저 캐시
  • 다시 게시 IIS
  • 에서 응용 프로그램을 다시 시작 - 이것은 디버그 중에 작동했지만 깨진 ca에 갔다. 나는 다시 false로 놓을 때 버전을 ched.
  • FileDependencyExtensions에서 .js를 제외하도록 ClientDependancy.config를 수정하십시오. 다시 .js가 제외되었지만 다시 추가 할 때 깨진 코드로 돌아갔습니다.
  • 속성 편집기 매니페스트에서 컨트롤러에 대한 참조를 제거하십시오. - 이렇게하면 페이지를 다시로드 할 수 있었지만 속성 편집기에는 컨트롤러가 없었습니다.
  • 데이터 유형 및 모든 참조를 제거하고 응용 프로그램을 다시 시작한 후 다시 작성했습니다.

이 작업을 쉽게 수행 할 수 있어야합니다. 어떤 제안?

+2

ClientDependency.config의 버전 번호를 업데이트하십시오 (단지 1보다 높거나 낮게 만하십시오). 극단적 인 경우 (크롬 캐시는 매우 공격적으로) 브라우저 캐시를 다시 지워야 할 수도 있습니다. – sebastiaan

+0

그건 속임수 였어. 감사. 답으로 표시하면 답변으로 표시됩니다. – HuwD

답변

6

Umbraco는 ClientDependency framework을 사용하여 백 오피스 자산을 캐시합니다. CDF는 ~/Config/ClientDependency.config 파일의 버전 번호를 기반으로 캐싱하여 작동합니다. 버전 번호를 변경하면 (단지 1을 높이거나 낮추면) 캐시가 재생성되고 모든 백 오피스 애셋에 자동으로 추가되는 쿼리 스트링이 변경됩니다.

이것은 브라우저 캐시를 파괴해야하지만 일부 브라우저 (특히 Chrome)는 애셋을 캐싱하는 데 매우 공격적이므로 일부 경우 브라우저 캐시를 지울 필요가 있습니다.