徵狀

在執行 Microsoft Internet 安全性與加速(ISA) Server 2004 (具備 Service Pack 2 或 Windows 重要商務伺服器2008)的伺服器上,停用下列兩個網頁篩選:

  • [壓縮] 篩選

  • 緩衝壓縮的內容篩選器

在您這麼做之後,ISA Server 2004 或 Windows 重要的商務伺服器2008會封鎖在使用轉寄 proxy 時包含接受編碼 HTTP 標頭的要求。這些網頁篩選器是在 ISA Server 2004 Service Pack 2 或 Windows 基本的商務伺服器2008中推出。 您可能會因程式相容性問題而停用這些網頁篩選器,涉及一些網頁伺服器。

解決方案

Service pack 資訊

若要解決此問題,請安裝 ISA Server 2004 Service Pack 3 (SP3),然後執行本節中所述的 Microsoft Visual Basic 腳本。 如需如何取得最新 ISA Server 2004 service pack 的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

891024 如何取得最新的 ISA Server 2004 service pack安裝 service pack 之後,請執行下列腳本來啟用新的配置參數。這個新參數可讓 ISA Server 在轉寄式 proxy 案例中停用壓縮篩選時,轉寄包含接受編碼 HTTP 標頭的要求。若要這樣做,請執行下列步驟。Microsoft 只提供圖例的程式設計範例,不含任何明示或默示的保證。這包括但不限於針對特定用途的適售性或適用性的默示擔保。本文假設您熟悉所示範的程式設計語言,以及用來建立及偵錯工具的工具。Microsoft 支援工程師可以協助說明特定程式的功能。不過,它們不會修改這些範例來提供額外的功能或構造程式,以符合您的特定需求。

  1. 按一下 [開始],指向 [所有程式],指向 [附件],然後按一下 [記事本]。

  2. 將下列程式碼貼到記事本檔中。

    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "AccessRuleSendAcceptEncodingHeader"Const SE_VPS_VALUE = trueSub SetValue()    ' Create the root obect.    Dim root  ' The FPCLib.FPC root object    Set root = CreateObject("FPC.Root")    'Declare the other objects needed.    Dim array       ' An FPCArray object    Dim VendorSets  ' An FPCVendorParametersSets collection    Dim VendorSet   ' An FPCVendorParametersSet object    ' Get references to the array object    ' and 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. 將記事本檔案儲存為 "AccessRuleSendAcceptEncodingHeader"。

  4. 按兩下 .vbs 檔案以執行腳本。

若要停用新的設定參數,請依照下列步驟執行:

  1. 按一下 [開始],指向 [所有程式],指向 [附件],然後按一下 [記事本]。

  2. 將下列程式碼貼到記事本檔中。

    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}" Const SE_VPS_NAME = "AccessRuleSendAcceptEncodingHeader" Const SE_VPS_VALUE = false Sub SetValue()      ' Create the root obect.      Dim root ' The FPCLib.FPC root object      Set root = CreateObject("FPC.Root")      'Declare the other objects needed.      Dim array ' An FPCArray object      Dim VendorSets ' An FPCVendorParametersSets collection      Dim VendorSet   ' An FPCVendorParametersSet object           ' Get references to the array object      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 If End Sub Sub CheckError()      If Err.Number <> 0 Then           WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear      End If End Sub SetValue
  3. 將記事本檔案儲存為「Disable_AccessRuleSendAcceptEncodingHeader .vbs」。

  4. 按兩下 .vbs 檔案以執行腳本。

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×