یکی از راه های افزایش سرعت دریافت صفحه های وب فشرده کردن آنهاست . فشرده سازی روی HTTP دو نوع Gzip و Deflate است .
برای استفاده از این دو نوع در ASP.NET می توانید در فایل Global.asax کد زیر را به کار گیرید .
ابتدا namespace های IO و IO.Compression را به فایل اضافه کنید .
Imports
System.IO
Imports
System.IO.Compression
سپس در رویداد BeginRequest کد زیر را استفاده کنید .
Sub
Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
Dim app As HttpApplication = CType(sender, HttpApplication)
Dim acceptEncoding As String = app.Request.Headers("Accept-Encoding")
Dim prevUncompressedStream As Stream = app.Response.Filter
If acceptEncoding Is Nothing Or acceptEncoding = "" Then
Return
End If
acceptEncoding = acceptEncoding.ToLower
If (acceptEncoding.Contains("gzip")) Then
app.Response.Filter =
New GZipStream(prevUncompressedStream, _
CompressionMode.Compress)
app.Response.AppendHeader(
"Content-Encoding", _
"gzip")
ElseIf (acceptEncoding.Contains("deflate")) Then
app.Response.Filter =
New DeflateStream(prevUncompressedStream, _
CompressionMode.Compress)
app.Response.AppendHeader(
"Content-Encoding", _
"deflate")
End If
End Sub