Arquivos CSS de Compactação do IIS7 compactados somente quando a compactação dinâmica está ativada

3

Se alguém puder ajudar, será apreciado. Eu gostaria de habilitar a compactação de arquivos estáticos no IIS7 (por uma questão de simplicidade, vou apenas me referir a arquivos css estáticos por enquanto).

O problema que estou tendo é que os arquivos css só são compactados quando a compactação dinâmica e estática é habilitada no IIS para o site. O que eu realmente quero alcançar é a compactação css (arquivo estático) enquanto deixo as páginas dinâmicas (aspx) como descompactadas por enquanto (para evitar carga desnecessária da CPU).

Estou confuso sobre o porquê de simplesmente deixar 'compactação estática' ativada faz com que os arquivos css sejam retornados descomprimidos.

Meu arquivo applicationHost.config não foi alterado e se parece com isto:

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

A configuração de compactação do servidor no IIS é definida como 'Desativada dinâmica' e 'Ativada estática' no servidor > Recursos > Página de compressão.

A configuração de compressão do site (Servidor > Sites > MyWebsite > Recursos > Compressão) é o local em que estou ativando e desativando a compactação dinâmica, conforme detalhado acima.

Qualquer ajuda seria realmente me ajudar a se livrar disso.

Obrigado

    
por Paul 10.11.2010 / 15:18

1 resposta

2

Provavelmente, seu arquivo CSS está sendo servido por um manipulador de conteúdo dinâmico, o que significa que é considerado conteúdo dinâmico pelo IIS. Se arquivos .CSS forem mapeados diretamente para o StaticFileHandler, eles provavelmente serão compactados junto com outro conteúdo estático, desde que o tipo MIME esteja correto.

Para descobrir se esse é o caso:

Ative o rastreamento de solicitação com falha para o site e ative uma regra que rastreia 200 respostas.

Abra o arquivo de log de solicitação com falha correspondente a uma solicitação .CSS e verifique quais manipuladores estão sendo chamados para produzir o arquivo e se a compactação foi considerada necessária. Os mapeamentos de scripts curinga geralmente são a causa desse tipo de comportamento.

Se você não marcar mais do que as solicitações freqüentesHitThreshold em frequencyHitTimePeriod (normalmente 2 em 10 segundos, se a memória for veiculada), o conteúdo não poderá ser compactado até que seja ultrapassado esse limite - o mesmo limite é usado para compactação como armazenamento em cache.

    
por 02.05.2011 / 07:06