IIS6: serve conteúdo estático compactado para clientes que o suportam

1

Como posso configurar o IIS para servir automaticamente recursos estáticos (imagens, javascript, css e assim por diante) compactados para clientes que o suportam - e servir conteúdo "normal" para clientes que não suportam compactação?

Além disso, o IIS6 pode armazenar em cache a versão compactada dos recursos para mim, para que eu não precise gravar os ciclos da CPU para fazer a compactação em cada solicitação?

Eu preciso habilitar isso para uma pasta específica no site.

    
por driis 05.08.2009 / 09:59

2 respostas

1

Provavelmente não é o gzip, mas eis a questão da compactação HTTP no IIS 6: link

    
por 05.08.2009 / 10:23
0

Aqui estão as opções da linha de comando para configurar tudo:

ADSUtil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoStaticCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoOnDemandCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoDynamicCompression TRUE

ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcDoStaticCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcDoOnDemandCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcDoDynamicCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcFileExtensions "asx" "css" "doc" "htm" "html" "js" "txt" "xml"
ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcScriptFileExtensions "asp" "ashx" "asmx" "aspx" "axd" "dll" "exe" "svc"
ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcOnDemandCompLevel 10
ADSUtil.vbs Set W3SVC/Filters/Compression/deflate/HcDynamicCompressionLevel 9

ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcDoStaticCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcDoOnDemandCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcDoDynamicCompression TRUE
ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcFileExtensions "asx" "css" "doc" "htm" "html" "js" "txt" "xml"
ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcScriptFileExtensions "asp" "ashx" "asmx" "aspx" "axd" "dll" "exe" "svc"
ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcOnDemandCompLevel 10
ADSUtil.vbs Set W3SVC/Filters/Compression/gzip/HcDynamicCompressionLevel 9

Redefinir o IIS, limpar seu cache, abrir o Fiddler, abrir o IE, fazer uma solicitação e voila, conteúdo compactado! Uma coisa a notar é que no nível dinâmico a compressão acontece com cada requisição. A blogosfera afirma que o trade-off entre os níveis 9 e 10 para a compressão dinâmica é tal que você vai querer considerar 9 porque leva exponencialmente menos CPU versus o benefício.

Aqui está o método mais conciso de obter compressão trabalhando no IIS 6 que eu encontrei, o acima foi tirado de um comentário por Colin Bowern em link

    
por 10.09.2010 / 21:41