Faça o seu aplicativo asp.net gzip sua própria saída com um método como este .
Eu não vi nenhuma pergunta que abordasse especificamente esse problema específico.
Quando o roteamento de URL é usado, a solicitação entra no IIS e é roteada para a página Aspx. Por exemplo, um site: www.site.com/products pode encaminhar o pedido para wwwroot / inetpub / mysite / pages / productsPage.aspx
É importante observar que a página é ROUTED, não ReDirected.
Observe que, para que as URLs funcionem corretamente no IIS 6, é necessário configurar uma extensão Wildcard que direcione todos os recursos para o Asp.Net (o Asp.Net entregará recursos estáticos novamente ) Isso está documentado aqui: link
Parece que o IIS não GZip o conteúdo quando o envia de volta. Eu segui as instruções aqui: link
para ativar a compactação do IIS 6.
Alguma idéia de por que a Compressão Http parece não funcionar? Parece funcionar bem em outros sites no meu servidor. Apenas aquele com roteamento de URL não está funcionando
Faça o seu aplicativo asp.net gzip sua própria saída com um método como este .
A melhor coisa a fazer é usar o HttpCompress da Bel Lowery. É um HttpModule simples, gratuito e de código aberto que manipula a compactação HTTP de suas páginas. Você pode usá-lo em combinação com a opção IIS Http Compression.
Eu uso o HttpCompress em combinação com o Vici MVC e funciona bem!
Eu tenho procurado na net por horas e era ou usar o HttpCompress, comprar um projeto comercial (o Port80 Software tem uma solução) ou escrever meu próprio HttpModule.
PS: o IIS faz a compactação HTTP com base na extensão do arquivo. É por isso que não está funcionando para sites que usam roteamento de URL.
Você tentou dessa maneira? MS KB322603
Para habilitar o IIS 5.0 para compactar páginas .aspx, siga estas etapas:
Desculpe estar tão atrasado na discussão, mas como (ainda) preciso habilitar a compactação do IIS 6 em um site MVC, aqui está uma solução nativa do IIS 6 que encontrei:
Incluir em extensões compactadas axd
. Suponhamos que você tenha a extensão do IIS 6 com menos suporte a URLs do .Net framework 4 corretamente habilitado.
Eu fiz isso diretamente na Metabase do IIS. (Conforme explicado aqui ; %windir%\systems32\inetsrv\metabase.xml
. para editá-lo, parar o IIS ou habilitar a "edição dinâmica da metabase" no IIS e fazer o backup dele.
Extrair da minha configuração:
<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/deflate"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="0"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="9"
HcFileExtensions="htm
html
txt
xml
css
js"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
dll
exe
cgi
aspx
asmx
ashx
axd"
>
</IIsCompressionScheme>
<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/gzip"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="1"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="9"
HcFileExtensions="htm
html
txt
xml
css
js"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
dll
exe
cgi
aspx
asmx
ashx
axd"
>
</IIsCompressionScheme>
<IIsCompressionSchemes Location ="/LM/W3SVC/Filters/Compression/Parameters"
HcCacheControlHeader="max-age=86400"
HcCompressionBufferSize="8192"
HcCompressionDirectory="%windir%\IIS Temporary Compressed Files"
HcDoDiskSpaceLimiting="TRUE"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcExpiresHeader="Wed, 01 Jan 1997 12:00:00 GMT"
HcFilesDeletedPerDiskFree="256"
HcIoBufferSize="8192"
HcMaxDiskSpaceUsage="99614720"
HcMaxQueueLength="1000"
HcMinFileSizeForComp="1"
HcNoCompressionForHttp10="FALSE"
HcNoCompressionForProxies="FALSE"
HcNoCompressionForRange="FALSE"
HcSendCacheHeaders="FALSE"
>
</IIsCompressionSchemes>
Rational: dentro do capô, extensões menos URLs funcionam no IIS 6 chamando uma página eurl.axd
. Veja este blog para uma explicação mais detalhada sobre extensões menos URLs no IIS6 com fx4.
Tags compression gzip iis-6 url-routing