Sintomi

In un server che esegue Microsoft Internet Security and Acceleration (ISA) Server 2004 con Service Pack 2 o Windows Essential Business Server 2008 si disabilitano i due filtri Web seguenti:

  • Filtro compressione

  • Memorizzazione nella cache del filtro contenuto compresso

Dopo questa operazione, ISA Server 2004 o Windows Essential Business Server 2008 blocca le richieste che includono l'intestazione HTTP Accept-Encoding quando viene usato un proxy di inoltro.Questi filtri Web sono stati introdotti in ISA Server 2004 Service Pack 2 o in Windows Essential Business Server 2008. È possibile disabilitare questi filtri Web a causa di problemi di compatibilità dei programmi che coinvolgono alcuni server Web.

Risoluzione

Informazioni sui Service Pack

Per risolvere il problema, installare ISA Server 2004 Service Pack 3 (SP3) e quindi eseguire lo script Microsoft Visual Basic descritto in questa sezione.Dopo aver installato il Service Pack, eseguire lo script seguente per abilitare un nuovo parametro di configurazione. Questo nuovo parametro consente alle richieste di inoltro di ISA Server che includono l'intestazione HTTP Accept-Encoding se i filtri di compressione sono disabilitati in uno scenario proxy di inoltro. A tale scopo, attenersi alla seguente procedura.Microsoft fornisce esempi di programmazione solo per illustrazioni, senza garanzie espresse o implicite. Sono incluse, a titolo esemplifiche, le garanzie implicite di commerciabilità o idoneità per uno scopo specifico. In questo articolo si presuppone che si abbia familiarità con il linguaggio di programmazione che viene illustrato e con gli strumenti usati per creare ed eseguire il debug delle routine. I tecnici del supporto Microsoft possono spiegare le funzionalità di una particolare procedura. Tuttavia, non modificheranno questi esempi per fornire funzionalità aggiunte o creare procedure per soddisfare i requisiti specifici.

  1. Fare clic su Start, scegliere Tutti i programmi, Accessori e quindi fare clic su Blocco note.

  2. Incollare il codice seguente nel documento del Blocco note.

    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "AccessRuleSendAcceptEncodingHeader"
    Const SE_VPS_VALUE = true
    
    Sub SetValue()
    
        ' Create the root obect.
        Dim root  ' The FPCLib.FPC root object
        Set root = CreateObject("FPC.Root")
    
        'Declare the other objects needed.
        Dim array       ' An FPCArray object
        Dim VendorSets  ' An FPCVendorParametersSets collection
        Dim VendorSet   ' An FPCVendorParametersSet object
    
        ' Get references to the array object
        ' and the network rules collection.
        Set array = root.GetContainingArray
        Set VendorSets = array.VendorParametersSets
    
        On Error Resume Next
        Set VendorSet = VendorSets.Item( SE_VPS_GUID )
    
        If Err.Number <> 0 Then
            Err.Clear
    
            ' Add the item
            Set VendorSet = VendorSets.Add( SE_VPS_GUID )
            CheckError
            WScript.Echo "New VendorSet added... " & VendorSet.Name
    
        Else
            WScript.Echo "Existing VendorSet found... value- " &  VendorSet.Value(SE_VPS_NAME)
        End If
    
        if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then
    
            Err.Clear
            VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE
    
            If Err.Number <> 0 Then
                CheckError
            Else
                VendorSets.Save false, true
                CheckError
    
                If Err.Number = 0 Then
                    WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
                End If
            End If
        Else
            WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
        End If
    
    End Sub
    
    Sub CheckError()
    
        If Err.Number <> 0 Then
            WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
            Err.Clear
        End If
    
    End Sub
    
    SetValue
    
  3. Salvare il file del Blocco note come "AccessRuleSendAcceptEncodingHeader.vbs".

  4. Fare doppio clic sul file VBS per eseguire lo script.

Per disabilitare il nuovo parametro di configurazione, seguire questa procedura:

  1. Fare clic su Start, scegliere Tutti i programmi, Accessori e quindi fare clic su Blocco note.

  2. Incollare il codice seguente nel documento del Blocco note.

    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}" 
    Const SE_VPS_NAME = "AccessRuleSendAcceptEncodingHeader" 
    Const SE_VPS_VALUE = false 
    
    Sub SetValue() 
    
         ' Create the root obect. 
         Dim root ' The FPCLib.FPC root object 
         Set root = CreateObject("FPC.Root") 
    
         'Declare the other objects needed. 
         Dim array ' An FPCArray object 
         Dim VendorSets ' An FPCVendorParametersSets collection 
         Dim VendorSet   ' An FPCVendorParametersSet object 
    
         ' Get references to the array object 
         Set array = root.GetContainingArray 
         Set VendorSets = array.VendorParametersSets 
    
         On Error Resume Next 
         Set VendorSet = VendorSets.Item( SE_VPS_GUID ) 
    
         If Err.Number <> 0 Then 
              Err.Clear 
    
              ' Add the item 
              Set VendorSet = VendorSets.Add( SE_VPS_GUID ) 
              CheckError 
              WScript.Echo "New VendorSet added... " & VendorSet.Name 
    
         Else 
              WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME) 
         End If 
    
         if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE 
    
              Then Err.Clear VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE 
    
              If Err.Number <> 0 Then 
                    CheckError 
              Else 
                    VendorSets.Save false, true 
                    CheckError 
    
                    If Err.Number = 0 Then 
                         WScript.Echo "Done with " & SE_VPS_NAME & ", saved!" 
                    End If 
              End If 
    
         Else 
              WScript.Echo "Done with " & SE_VPS_NAME & ", no change!" 
    
         End If 
    
    End Sub 
    
    Sub CheckError() 
    
         If Err.Number <> 0 Then 
              WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear 
         End If 
    End Sub 
    
    SetValue
    
  3. Salvare il file del Blocco note come "Disable_AccessRuleSendAcceptEncodingHeader.vbs".

  4. Fare doppio clic sul file VBS per eseguire lo script.

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.