使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

在运行 Microsoft Internet 安全性和加速 (ISA) Server 2004 Service Pack 2 或 Windows Essential Business Server 2008 的服务器上,禁用以下两个 Web 筛选器:

  • 压缩筛选器

  • 缓存压缩内容筛选器

执行此操作后,使用转发代理时,ISA Server 2004 或 Windows Essential Business Server 2008 会阻止包含 Accept-Encoding HTTP 标头的请求。

ISA Server 2004 Service Pack 2 或 Windows Essential Business Server 2008 中引入了这些 Web 筛选器。 由于涉及某些 Web 服务器的程序兼容性问题,可能会禁用这些 Web 筛选器。

解决方法

Service Pack 信息

若要解决此问题,请安装 ISA Server 2004 Service Pack 3 (SP3) ,然后运行本部分中提到的 Microsoft Visual Basic 脚本。

安装 Service Pack 后,运行以下脚本以启用新的配置参数。 如果压缩筛选器在转发代理方案中被禁用,则此新参数允许 ISA 服务器转发包含Accept-Encoding HTTP 标头的请求。 为此,请按照下列步骤操作。

Microsoft 提供编程示例仅供说明,不提供明示或默示担保。 这包括但不限于适销性或针对特定用途的适用性的默示保证。 本文假定你熟悉所演示的编程语言以及用于创建和调试过程的工具。 Microsoft 支持工程师可以帮助解释特定过程的功能。 但是,它们不会修改这些示例以提供附加的功能或构造过程来满足你的特定要求。

  1. 单击“ 开始”,指向 “所有程序”,指向“ 附件”,然后单击“ 记事本”。

  2. 将以下代码粘贴到记事本文档中。

    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "AccessRuleSendAcceptEncodingHeader"
    Const SE_VPS_VALUE = true
    
    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
        ' 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 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. 将记事本文件另存为“AccessRuleSendAcceptEncodingHeader.vbs”。

  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 产品问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×