Příznaky
Zvažte následující scénář:
-
Pro přístup k webovému serveru používáte Microsoft Internet Security and Acceleration (ISA) Server 2004 nebo ISA Server 2006 jako web proxy.
-
Na webovém serveru provádíte operaci POST.
-
Webový server odešle klientovi odpověď na požadavek na ověření 401.
Server ISA však namísto předání odpovědi klientovi zahazuje odpověď "je vyžadována autentizace" 401. Tento problém může způsobit selhání pokusu o přístup k webu. Pokud se například pokusíte odeslat do webového serveru velký soubor, může dojít k odeslání časového limitu operace odesílání.
Řešení
Tento problém vyřešíte následujícím postupem:
-
Používáte-li ISA Server 2004, použijte balíček oprav hotfix popsaný v následujícím článku znalostní báze Microsoft Knowledge Base:
940709 Popis balíčku oprav hotfix serveru ISA Server 2004:25. července 2007Pokud používáte ISA Server 2006, použijte poslední aktualizaci Service Pack serveru ISA Server. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
954258 jak získat nejnovější službu Internet Security and ACCELERATION (ISA) Server 2006 Service Pack
-
Spusťte program Poznámkový blok.
-
Zkopírujte následující kód a vložte jej do programu Poznámkový blok.
Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "AllowPrematureServerResponse"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 objects that are needed. 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
-
Uložte soubor jako soubor skriptu v jazyce Microsoft Visual Basic pomocí přípony názvu souboru VBS. Chcete-li například uložit soubor, použijte následující název:
AllowPrematureServerResponse.vbs
-
Spusťte příkazový řádek, přejděte do umístění, kam jste uložili soubor AllowPrematureServerResponse. vbs, a spusťte následující příkaz:
cscript AllowPrematureServerResponse. vbs
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Další informace
Další informace o instalaci oprav hotfix a aktualizací serveru ISA Server získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
885957 jak nainstalovat opravy hotfix a aktualizace serveru ISA Server