Symptômes
Sur un serveur qui exécute Microsoft Internet Security and Acceleration (ISA) Server 2004 avec Service Pack 2 ou Windows Essential Business Server 2008, vous désactivez les deux filtres web suivants :
-
Filtre de compression
-
Filtre de contenu compressé de mise en cache
Après cela, ISA Server 2004 ou Windows Essential Business Server 2008 bloque les requêtes qui incluent l’en-tête HTTP Accept-Encoding lorsqu’un proxy de transfert est utilisé.
Ces filtres web ont été introduits dans ISA Server 2004 Service Pack 2 ou dans Windows Essential Business Server 2008. Vous pouvez désactiver ces filtres Web en raison de problèmes de compatibilité de programme qui impliquent certains serveurs Web.Résolution
Informations sur le Service Pack
Pour résoudre ce problème, installez ISA Server 2004 Service Pack 3 (SP3), puis exécutez le script Microsoft Visual Basic mentionné dans cette section.
Après avoir installé le Service Pack, exécutez le script suivant pour activer un nouveau paramètre de configuration. Ce nouveau paramètre permet à ISA Server de transférer les requêtes qui incluent l’en-tête HTTP Accept-Encoding si les filtres de compression sont désactivés dans un scénario de proxy de transfert. Pour la modifier, utilisez la clé de Registre AutoRecoverDelay. Microsoft fournit des exemples de programmation à titre d’illustration uniquement, sans garantie expresse ou implicite. Cela inclut, sans s’y limiter, les garanties implicites de qualité marchande ou d’adéquation à un usage particulier. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les ingénieurs du support technique Microsoft peuvent vous aider à expliquer les fonctionnalités d’une procédure particulière. Toutefois, ils ne modifient pas ces exemples pour fournir des fonctionnalités supplémentaires ou construire des procédures pour répondre à vos besoins spécifiques.-
Cliquez sur Démarrer, pointez sur Tous les programmes, sur Accessoires, puis cliquez sur Bloc-notes.
-
Collez le code suivant dans le document bloc-notes.
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
-
Enregistrez le fichier Bloc-notes sous « AccessRuleSendAcceptEncodingHeader.vbs ».
-
Double-cliquez sur le fichier .vbs pour exécuter le script.
Pour désactiver le nouveau paramètre de configuration, procédez comme suit :
-
Cliquez sur Démarrer, pointez sur Tous les programmes, sur Accessoires, puis cliquez sur Bloc-notes.
-
Collez le code suivant dans le document bloc-notes.
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
-
Enregistrez le fichier Bloc-notes sous « Disable_AccessRuleSendAcceptEncodingHeader.vbs ».
-
Double-cliquez sur le fichier .vbs pour exécuter le script.
État
Microsoft a confirmé l’existence de ce problème dans les produits Microsoft répertoriés dans la section « S’applique à ».