2009-08-24 14 views
23

Czy istnieje sposób ustawienia kompresji gzip na poziomie web.config, czy mogę to zrobić tylko w konsoli zarządzania IIS?Ustawianie kompresji gzip w asp.net

+0

możliwe duplikat [Jak zaimplementować kompresję GZip w ASP.NET?](http://stackoverflow.com/questions/552317/how- to-implement-gzip-compression-in-asp-net). –

Odpowiedz

7

Tak, możesz włączyć kompresję za pomocą web.config, jak pokazuje poniższy artykuł - ale może to zależeć od uprawnień na serwerze zezwala na witryny.

Należy zauważyć, że dynamiczna kompresja (wszystko, co musi zostać przetworzone, zanim ti może zostać wysłane do klienta) może zwiększyć obciążenie serwera, ponieważ wymaga kompresji na każde żądanie.

IIS7 Compression


Edycja: Uwaga: to jest dla IIS7 (jak to określili)

+0

Ta zmiana spowoduje gzip js i css, ale nie faktyczne wyjście HTML z ASP.Net, z jakiegoś powodu. Wyobraźmy sobie, że ustawienie opcji dynamicznej kompresji zawartości na włączone spowoduje, że będzie to możliwe, ale w moich testach nie działa. –

37

Tutaj spróbuj tego: Sped moja strona o około 400% procent. Pracowałem przy pierwszej próbie.

Activate GZip with web.config

<system.webServer> 
    <httpCompression directory="%SystemDrive%\inetpub\ 
temp\IIS Temporary Compressed Files"> 
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/> 
    <dynamicTypes> 
     <add mimeType="text/*" enabled="true"/> 
     <add mimeType="message/*" enabled="true"/> 
     <add mimeType="application/javascript" 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="*/*" enabled="false"/> 
    </staticTypes> 
    </httpCompression> 
    <urlCompression doStaticCompression="true" doDynamicCompression="true"/> 
</system.webServer> 
+2

Próbowałem kilka razy, ale jeśli te ustawienia są ustawione w web.config, kompresja nie działa. Jeśli ustawienia są ustawione w pliku applicationhost.config, wszystko działa. Nie lubię ustawiania ustawień w pliku applicationhost.config, ale przynajmniej działa. –

+0

Mój współdzielony dostawca usług hostingowych zarządza moimi uprawnieniami za pomocą Plesk i ma rozwiązanie, które również mi się nie udaje. Wyjaśniłem w skrócie dłuższe rozwiązanie, które zestawiłem na http://stackoverflow.com/a/14509007/1624169 –

+0

Działa na Discount.asp bez problemów. –

-2

To może być skomplikowane lub wręcz niemożliwe, aby zmodyfikować ApplicationHost.config we wszystkich środowiskach.

Więc dlaczego nie po prostu gzip w kodzie, jak pokazano w tym poście http://laubplusco.net/gzip-svg-files-asp-net/

+0

Witaj, witamy w Stack Overflow. Ta odpowiedź dotyczy tylko łącza i nie jest to dobrą rzeczą (link może zostać zmieniony lub usunięty w przyszłości). Co powiesz na rozszerzenie odpowiedzi o szczegóły rozwiązania? :) –