2008-08-22 5 views
9

저는 작업중인 ASP.NET webforms 응용 프로그램 (3.5 SP1)을 가지고 있으며 gzip fpr HTML과 CSS를 파이프를 통해 사용하도록 설정하려고합니다. this implementation을 사용하고 있습니다. (Application_BeginRequest에 연결하는 몇 가지 다른 도구를 사용해 보았습니다.) 페이지가 사용하는 외부 CSS 파일이 손상된 것 같습니다. 간헐적으로 ... 갑자기 모든 스타일이 페이지 새로 고침에서 사라집니다. 잠시 후 갑자기 다시 일하기 시작합니다.왜 ASP.NET gzip 압축이 CSS를 손상 시키는가?

IE7과 FF3 모두이 동작을 나타냅니다. 웹 개발자 도구 모음을 사용하여 CSS를 보면 지껄임이 생깁니다. 캐시 제어 헤더는 "비공개"로 전달되지만, 이것이 기여 요인인지 아닌지를 판단 할만큼 충분하지 않습니다.

또한 ASP.NET 개발 서버에서 실행됩니다. 어쩌면 IIS에서 괜찮 겠지만 XP에서 개발 중이며 IIS5가 될 것입니다.

답변

5

손상된 CSS 파일입니까? JS 파일 (또는 기타 정적 텍스트 파일)이 정상적으로 작동합니까?

CSS 파일을 직접 탐색해도 동작을 복제 할 수 있습니까? 두 상자 오른쪽 클릭 →

  • IIS → 웹 서비스 확장 확인,

    1. IIS → 웹 사이트 → 속성 → 서비스 탭 :

      나는 단지이 방법을 사용하여 Windows 2003 서버의 IIS에 압축을 사용하도록 설정 새로운

       
          Name 
           Http Compression 
          Required Files 
           %systemroot%\system32\inetsrv\gzip.dll
    2. IIS가 → 오른쪽 상단 노드를 클릭 추가, 인터넷 정보 서비스, 가 메타베이스 직접 편집
    3. 백업 및 편집 %systemroot%\system32\inetsrv\MetaBase.xml실행을 선택하십시오
      1. Location ="/LM/W3SVC/Filters/Compression/gzip"
        • png, css, jsHcFileExtensions에 다른 정적 파일 확장자
        • aspx을 추가하고 다른 실행 파일 확장 HcScriptFileExtensions
        • 에 추가
    4. 저장을 찾기
    5. IIS를 다시 시작하십시오 (iisreset)

    재생할 Windows 2003/2008 서버가있는 경우이 방법을 시도해보십시오.

  • +1

    Firefox/Chrome/Opera는 손상된 zip 파일을 다운로드하는 동안 IE7/8이 손상되었습니다. 이것은 IIS6가 zip 파일을 압축하는 gzip 이었기 때문에 IE를 화나게했을 것입니다. 솔루션으로 내 문제가 해결되었으며 IIS는 더 이상 압축 파일을 다시 압축하지 않습니다. –

    0

    IIS 6 또는 IIS 7에 배포하는 경우 기본 제공 IIS 압축을 사용하십시오. 우리는 프로덕션 사이트에서 HTML, CSS 및 JavaScript를 오류없이 압축하는 데 사용하고 있습니다. 또한 압축 된 버전을 서버에 캐시하므로 압축 적중 횟수는 한 번만 발생합니다.

    +0

    유감스럽게도 기본 설정을 사용하면 IE7/8에서 zip 파일이 손상되는 것 같습니다. 결과적으로 IIS는 기본적으로 zip 파일을 압축하려고합니다. 이는 다소 어리 석습니다. –