تم إسقاط استجابة مصادقة 401 "مطلوب" التي يتم إرسالها بواسطة موقع ويب عند استخدام ISA Server 2004 أو في ISA Server 2006 كوكيل ويب


مؤشرات الخطأ


اطّلع على السيناريو التالي:
  • استخدام أمان إنترنت وتسريع (ISA) Server 2004 أو ISA Server 2006 كوكيل ويب بالوصول إلى موقع ويب.
  • تنفيذ عملية نشر على موقع ويب.
  • موقع ويب بإرسال استجابة مصادقة 401 "مطلوب" للعميل.
ومع ذلك، يسقط ISA Server استجابة مصادقة 401 "مطلوب" بدلاً من إعادة توجيه استجابة إلى العميل. قد تؤدي هذه المشكلة إلى فشل محاولة الوصول إلى ويب. على سبيل المثال، عند محاولة تحميل ملف كبير إلى موقع ويب، قد عملية الإيداع المهلة.

الحل


لحل هذه المشكلة، اتبع الخطوات التالية.
  1. إذا كنت تستخدم ISA Server 2004، تطبيق حزمة الإصلاح العاجل الموضح في مقالة "قاعدة معارف Microsoft" التالية:
    وصف حزمة الإصلاحات الجديدة ISA Server 2004 940709 : 25 تموز/يوليه 2007
    إذا كنت تستخدم ISA Server 2006 تطبيق آخر حزمة خدمة لملقم ISA. للحصول على مزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
    كيفية الحصول على أحدث أمان إنترنت وملقم تسريع (ISA) 2006 حزمة خدمة 954258
  2. تشغيل "المفكرة".
  3. نسخ التعليمات البرمجية التالية ولصقها في برنامج "المفكرة".
    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
  4. حفظ الملف كملف برنامج نصي ل Microsoft Visual Basic باستخدام ملحق اسم ملف.vbs. على سبيل المثال، استخدام الاسم التالي لحفظ الملف:
    AllowPrematureServerResponse.vbs
  5. بدء تشغيل موجه الأوامر، تغيير إلى الموقع الذي قمت بحفظ ملف AllowPrematureServerResponse.vbs ثم قم بتشغيل الأمر التالي:
    cscript AllowPrematureServerResponse.vbs

الحالة


أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".

مزيد من المعلومات


لمزيد من المعلومات حول كيفية تثبيت الإصلاحات العاجلة ISA Server والتحديثات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
كيفية تثبيت التحديثات والإصلاحات "مخدم أمن و" 885957