If you publish a Web farm in Microsoft Internet Security and Acceleration (ISA) Server 2006 or in Windows Essential Business Server 2008, ISA Server or Windows Essential Business Server 2008 uses Web Publishing Load Balancing (WPLB) cookies to implement load balancing. By default, the HTTPOnly flag in WPLB cookies is enabled. This behavior may cause some compatibility issues.
You can disable the HTTPOnly flag in WPLB cookies after you apply the hotfix that is described in the KB937186 Microsoft Knowledge Base article.
To disable the
HTTPOnly flag in WPLB cookies, follow these steps:
- Apply the hotfix that is described in the following Microsoft Knowledge Base article:
937186
(http://support.microsoft.com/kb/937186/
)
Description of the ISA Server 2006 hotfix package that is dated May 14, 2007
- Start Notepad.
- Copy the following script into a Notepad file.
Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
Const SE_VPS_NAME = "HTTPOnly"
Const SE_VPS_VALUE = false
'Define the constants needed
const Error_FileNotFound = &H80070002
Const fpcPolicyWebPublishing = 2
Main(WScript.Arguments)
Sub Main(args)
If(args.Count = 1) Then
AllowCompressedContent args(0)
Else
Usage()
End If
End Sub
Sub AllowCompressedContent(ruleName)
' Create the root object.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
' Declare the other objects needed.
Dim isaArray ' An FPCArray object
Dim rule ' An FPCPolicyRule object
' Get a reference to the array object.
Set isaArray = root.GetContainingArray()
' Get a reference to the policy rule specified.
On Error Resume Next
Set rule = isaArray.ArrayPolicy.PolicyRules.Item(ruleName)
If Err.Number = Error_FileNotFound Then
WScript.Echo "The policy rule specified could not be found."
Else
Err.Clear
On Error GoTo 0
If rule.Type = fpcPolicyWebPublishing Then
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
Set VendorSets = rule.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
End If
End If
rule.Save
WScript.Echo "Done!"
Else
WScript.Echo "The policy rule specified is not a Web publishing rule."
End If
End If
End Sub
Sub Usage()
WScript.Echo "Usage:" & VbCrLf _
& " " & WScript.ScriptName & " RuleName" & VbCrLf _
& "" & VbCrLf _
& " RuleName - Name of the Web publishing rule"
WScript.Quit
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
- Save the file as a Microsoft Visual Basic script file by using the .vbs file name extension. For example, use the following name to save the file:
WPLBDisableHTTPOnly.vbs
- Open a command prompt, move to the location where you saved the WPLBDisableHTTPOnly.vbs file, and then run the following command:
cscript WPLBDisableHTTPOnly.vbs <Rule name>
Note The <Rule name> placeholder represents the name of the policy rule for which you want to apply this change. You can run the script multiple times for multiple policy rules.