2010-05-06 1 views
1

내 iis 설정에서 javascript 파일에 대해 gzip을 활성화합니다. 여기에 해당 구성 섹션이 있습니다.가끔 내 JavaScript 파일이 압축되지 않는 이유는 무엇입니까? (IIS Gzip 문제)

<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files"> 
     <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" staticCompressionLevel="10" dynamicCompressionLevel="8" /> 
     <dynamicTypes> 
      <add mimeType="text/*" enabled="true" /> 
      <add mimeType="message/*" enabled="true" /> 
    <add mimeType="application/soap+msbin1" enabled="true" /> 
      <add mimeType="*/*" enabled="false" /> 
     </dynamicTypes> 
     <staticTypes> 
      <add mimeType="text/*" enabled="true" /> 
      <add mimeType="message/*" enabled="true" /> 
      <add mimeType="application/javascript" enabled="true" /> 
    <add mimeType="application/x-javascript" enabled="true" /> 
      <add mimeType="*/*" enabled="false" /> 
     </staticTypes> 
    </httpCompression> 

현재 js 파일을 다운로드 할 때 가끔 서버가 gzip 하나를 반환하는 것처럼 보일 때가 있습니다. 내가 왜, 그리고 디버깅하는 방법을 몰라.

파일이 이미 gzip 된 경우 로컬 디스크에 캐시해야하며 다음에 다른 사람이 파일을 다시 방문하면 iis 커널은 다시 압축하지 않고 캐시 gzip 파일을 직접 반환해야합니다. 그게 맞습니까?

+0

두 경우 모두 요청 및 응답 본문을 게시 할 수 있습니까 (파일 압축 여부). Firefox의 IE 및 FireBug에서 Fiddler를 사용할 수 있습니다. –

+0

안녕하세요, artem, 저는 웹 개발자입니다. 응답이 gzipped인지 확인하는 방법을 알고 있습니다. 그리고 나는 그것이 gzipped가 아니라고 확신한다. 그리고 운 좋게도, 나는 그것이 iis 버그라는 것을 알아냅니다. 이 버그에 대한 게시물을 작성합니다. –

답변

1

jaf, 나는 그것을 스스로 파악합니다. iis에 버그가있을 수 있습니다. frequenthitthreshold 옵션을 설정하여 스크립트 파일이 항상 파일을 gzip하도록 강제 설정할 수 있습니다. 내가이 버그에 대한 게시물을 작성하지만 중국어에있어, 여기에 구글은 applicationHost에서의 system.webServer/serverRuntime 노드에서 1 버전 Why gzip not work in IIS7?

0

브라우저 캐시를 지우고 다시 시도하십시오.

+0

클라이언트 캐시에는 아무 것도 없습니다. 서버에 관한 모든 것 –

1
수정은 실제로 frequentHitThreshold 속성을 설정 것으로 보인다

번역 s의 .config 파일. 문서는 http://www.iis.net/ConfigReference/system.webServer/serverRuntime입니다.

당신은 관리자 권한으로 다음 명령을 실행하여이 작업을 수행 할 수 있습니다

%windir%\system32\inetsrv\appcmd set config /section:serverRuntime /frequentHitThreshold:1 /commit:apphost 

경고의 말씀 -은 "자주 히트"개념은 압축을 특정하지 않는 것 같습니다. 나는 이것을 설정 한 결과로 다른 결과가 있는지 전혀 모른다.