Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Belirtiler

Bir kullanıcı Microsoft Internet Security and Acceleration (ISA) Server 2006, ISA Server 2006 SP1 veya Windows Essential Business Server 2008'de yayınlanan bir SharePoint Web sitesine erişiğinde, kullanıcı aşağıdaki hata iletilerinden birini alabilir:Hata iletisi 1

HTTP 401 Yetkisiz

Hata iletisi 2

HTTP 500 Sunucu belirtilen Uniform Resource Locator (URL) reddetti. Sunucu yöneticisine başvurun.

Bu sorun, aşağıdaki koşullar doğru olduğunda oluşur:

  • SharePoint Web yayımlama kuralının kullandığı Web dinleyicisinde HTML Form Kimlik Doğrulaması yapılandırılır.

  • Web istemcisi SharePoint Web sitesine bir POST isteği gönderir.

  • POST isteğinin URL'si genişletilmiş karakterler içerir. Örneğin, URL é, à veya è içerir.

Neden

BU sorun, ISA Server veya Windows Essential Business Server 2008'in genişletilmiş karakterler içeren bir URL'yi ayrıştıramaması nedeniyle oluşur. Bu durumda, ISA Server veya Windows Essential Business Server 2008 istemcinin gönderdiği POST isteğini reddeder.

Çözüm

Bu sorunu gidermek için aşağıdaki adımları izleyin:

  1. Microsoft Knowledge Base madde 940250'de açıklanan düzeltmeyi uygulayın. Daha fazla bilgi için, Makaleyi Microsoft Bilgi Bankası'nda görüntülemek için aşağıdaki makale numarasını tıklatın:

    940250 ISA Server 2006 hotfix paketinin açıklaması: 16 Temmuz 2007

  2. Aşağıdaki komut dosyasını Not Defteri'ne kopyalayın:Not ISA Server 2006'da bu sorunu çözmek için aşağıdaki komut dosyasını kullanın. ISA Server 2006 SP1 için bu makalede düzeltme uygulamak zorunda değildir, ancak komut dosyası kullanmanız gerekir.

    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "CookieFilterDecodeUEncoding"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
  3. .vbs dosya adı uzantısını kullanarak dosyayı Microsoft Visual Basic komut dosyası dosyası olarak kaydedin. Örneğin, aşağıdaki adı kullanarak dosyayı kaydedin:

    EnableKB940248.vbs

  4. Komut isteminde EnableKB940248.vbs dosyasını kaydettiğiniz konuma geçin.

  5. Aşağıdaki komutu çalıştırın:

    cscript EnableKB940248.vbs

Not Bu adımları takip ettikten sonra, yalnızca URL'nin sorgu bölümü genişletilmiş karakterler içerebilir. Sorgu bölümü URL'deki soru işaretini (?) izler. URL'deki soru işaretinden önce gelen bölüm, bu çözümü kullandıktan sonra bile genişletilmiş karakterler içeremez. Komut dosyasını adım 5'te çalıştırdığınızda yapılan değişiklikleri kaldırmak istiyorsanız, aşağıdaki komut dosyasını çalıştırın:

Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "CookieFilterDecodeUEncoding"Const SE_VPS_VALUE = FalseSub SetValue()' Create the root object.Dim root ' The FPCLib.FPC root objectroot = CreateObject("FPC.Root")'Declare the other objects that are needed.Dim array ' An FPCArray objectDim VendorSets ' An FPCVendorParametersSets collectionDim VendorSet ' An FPCVendorParametersSet object' Get references to the array object' and to the network rules collection.array = root.GetContainingArrayVendorSets = array.VendorParametersSetsOn Error Resume NextVendorSet = VendorSets.Item(SE_VPS_GUID)If Err.Number <> 0 ThenErr.Clear()' Add the itemVendorSet = VendorSets.Add(SE_VPS_GUID)CheckError()WScript.Echo("New VendorSet added... " & VendorSet.Name)ElseWScript.Echo("Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME))End IfIf VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE ThenErr.Clear()VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUEIf Err.Number <> 0 ThenCheckError()ElseVendorSets.Save(False, True)CheckError()If Err.Number = 0 ThenWScript.Echo("Done with " & SE_VPS_NAME & ", saved!")End IfEnd IfElseWScript.Echo("Done with " & SE_VPS_NAME & ", no change!")End IfEnd SubSub CheckError()If Err.Number <> 0 ThenWScript.Echo("An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description)Err.Clear()End IfEnd SubSetValue Change to:[INSERT CORRECTION]Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "CookieFilterDecodeUEncoding"Const SE_VPS_VALUE = falseSub SetValue()' Create the root object.Dim root ' The FPCLib.FPC root objectSet root = CreateObject("FPC.Root")'Declare the other objects that are needed.Dim array ' An FPCArray objectDim VendorSets ' An FPCVendorParametersSets collectionDim VendorSet ' An FPCVendorParametersSet object' Get references to the array object' and to the network rules collection.Set array = root.GetContainingArraySet VendorSets = array.VendorParametersSetsOn Error Resume NextSet VendorSet = VendorSets.Item( SE_VPS_GUID )If Err.Number <> 0 ThenErr.Clear' Add the itemSet VendorSet = VendorSets.Add( SE_VPS_GUID )CheckErrorWScript.Echo "New VendorSet added... " & VendorSet.NameElseWScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME)End Ifif VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE ThenErr.ClearVendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUEIf Err.Number <> 0 ThenCheckErrorElseVendorSets.Save false, trueCheckErrorIf Err.Number = 0 ThenWScript.Echo "Done with " & SE_VPS_NAME & ", saved!"End IfEnd IfElseWScript.Echo "Done with " & SE_VPS_NAME & ", no change!"End IfEnd SubSub CheckError()If Err.Number <> 0 ThenWScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.DescriptionErr.ClearEnd IfEnd SubSetValue

Durum

Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×