Symptômes
Prenons l’exemple du scénario suivant :
-
Vous accédez à un site Web qui est publié dans Microsoft Internet Security and Acceleration (ISA) Server 2004. Ou, vous accédez à un site Web en utilisant ISA Server 2004 comme proxy Web.
-
Le filtre Web du filtre de compression est activé dans ISA Server 2004.
-
Le site Web envoie une réponse HTTP/0.9 au client.
Dans ce scénario, vous recevez l'un des messages d'erreur suivants. Message d'erreur 1
HTTP/1.1 502 Erreur de proxy (Le nom du réseau spécifié n'est plus disponible.)
Message d’erreur 2
Code d'erreur 64: Hôte non disponibleContexte: La passerelle ou le serveur proxy a perdu la connexion au serveur Web.
Cause
Une réponse HTTP/0.9 n'a qu'un corps, mais pas d'en-têtes. Le site Web ferme la connexion pour indiquer la fin d'une réponse. Toutefois, le filtre Web du filtre de compression dans ISA Server s'attend à une réponse HTTP/1.0 ou HTTP/1.1. Le filtre Web du filtre de compression ne reconnaît pas de réponse HTTP/0.9. Par conséquent, le filtre Web du filtre de compression suppose que la connexion est perdue ou réinitialisée avant que le site Web puisse envoyer tous les en-têtes de réponse HTTP.
Résolution
Pour résoudre ce problème, suivez les étapes suivantes :
-
Appliquez le paquet hotfix qui est décrit dans l'article suivant microsoft Knowledge Base :
945043 Description du paquet de hotfixing ISA Server 2004 : 12 novembre 2007
-
Démarrer Notepad.
-
Copiez le code suivant, puis collez-le dans Le bloc-notes.
Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "EnableHotfix944114"Const SE_VPS_VALUE = trueSub SetValue() ' Create the root object. Dim root ' The FPCLib.FPC root object Set root = CreateObject("FPC.Root") 'Declare the other required objects. Dim array ' An FPCArray object Dim VendorSets ' An FPCVendorParametersSets collection Dim VendorSet ' An FPCVendorParametersSet object ' Get references to the array object ' and to 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 IfEnd SubSub CheckError() If Err.Number <> 0 Then WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear End IfEnd SubSetValue
-
Enregistrez le fichier en tant que fichier de script Microsoft Visual Basic en utilisant l'extension de nom de fichier .vbs. Par exemple, utilisez le nom suivant pour enregistrer le fichier :
EnableHotfix944114.vbs
-
Lors d'une invite de commande, changez à l'endroit où vous avez enregistré le fichier à l'étape 4, puis exécutez la commande suivante :
cscript EnableHotfix944114.vbs
Remarque Pour revenir au paramètre par défaut, modifiez le script en changeant "Const SE_VPS_VALUE ' true" en "Const SE_VPS_VALUE 'faux.". Enregistrer le script, puis l'exécuter à nouveau.
Solution de contournement
Pour contourner ce problème, désamairser le filtre Web du filtre de compression dans ISA Server.
Statut
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.