Симптоми
Да разгледаме следния сценарий:
-
Използвате Microsoft Internet Security и Acceleration (ISA) Server 2004 или ISA Server 2006 като уеб прокси сървър за достъп до уеб сайт.
-
Изпълнявате операция за публикуване на уеб сайта.
-
Уеб сайтът изпраща "401 удостоверяване изисква" отговор на клиента.
Въпреки това ISA Server капки "401 удостоверяване изисква" отговор, вместо изпращане отговор на клиента. Този проблем може да доведе до опит за влизане достъп до интернет. Например когато се опитате да качите голям файл на уеб сайта, качване операцията може да изтече.
Решение
За да разрешите този проблем, изпълнете следните стъпки:
-
Ако работите с ISA Server 2004, приложете пакета с актуални корекции, който е описан в следната статия от базата знания на Microsoft:
940709 описание на пакета с актуални корекции ISA Server 2004: 25 юли 2007 г.Ако работите с ISA Server 2006, приложете Последната ISA Server сервизен пакет. За повече информация щракнете върху следния номер на статия в базата знания на Microsoft:
954258 как да получите най-новите Internet Security and Acceleration (ISA) Server 2006 сервизен пакет
-
Стартирайте Notepad.
-
Копирайте следния код и след това го поставете в Notepad.
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
-
Запишете файла като Microsoft Visual Basic скрипт файл чрез .vbs файлово разширение. Например използвайте следното име за записване на файла:
AllowPrematureServerResponse.vbs
-
Стартирайте командния ред, промяна на мястото, където сте записали файла AllowPrematureServerResponse.vbs и след това изпълнете следната команда:
cscript AllowPrematureServerResponse.vbs
Статус
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, изброени в раздела "Отнася се за".
Повече информация
За повече информация относно инсталирането на ISA Server спешни корекции и актуализации, щракнете върху следния номер на статия в базата знания на Microsoft:
885957 как да инсталирате ISA Server спешни корекции и актуализации