HttpRedirectSection 类

配置 HTTP 重定向。

语法

class HttpRedirectSection : ConfigurationSectionWithCollection  

方法

下表列出了 HttpRedirectSection 类公开的方法。

名称 说明
添加 (继承自 ConfigurationSectionWithCollection。)
清除 (从 ConfigurationSectionWithCollection 继承。)
Get (从 ConfigurationSectionWithCollection 继承。)
GetAllowDefinition (继承自 ConfigurationSection。)
GetAllowLocation (从 ConfigurationSection 继承。)
删除 (从 ConfigurationSectionWithCollection 继承。)
RevertToParent (从 ConfigurationSection 继承。)
SetAllowDefinition (从 ConfigurationSection 继承。)
SetAllowLocation (从 ConfigurationSection 继承。)

属性

下表列出了 HttpRedirectSection 类公开的属性。

名称 描述
ChildOnly 一个读/写 boolean 值。 如果重定向目标位于原始 URL 的子目录中,则为 true;否则,为 false。 默认为 false。 此设置提醒 IIS 重定向应只发生一次,并阻止替换引擎中的无限循环。
Destination 一个必需的非空读/写 string 值,该值包含要将用户重定向到的文件名、目录路径或 URL。 该字符串可以包含重定向变量,以便将原始 URL 的部分内容传递给目标 URL。 可以在字符串中使用多个变量。
Enabled 一个读/写 boolean 值。 如果已启用 HTTP 重定向,则为 true;否则为 false。 默认为 false
ExactDestination 一个读/写 boolean 值。 如果 URL 被视为绝对位置,则为 true;否则,为 false。 对 true 进行设置可防止替换引擎将原始请求的资源追加到重定向 URL。
HttpRedirect 一个由 WildcardRedirectElement 值构成的数组,通过使用匹配条件,将文件名、目录路径或 URL 请求重定向到指定目标。
HttpResponseStatus 一个读/写 sint32 枚举,包含 HTTP 响应状态。 后文的“备注”部分列出了可能的值。
Location (继承自 ConfigurationSection。)一个键属性。
Path (继承自 ConfigurationSection。)一个键属性。
SectionInformation (从 ConfigurationSection 继承。)

子类

此类不包含子类。

注解

下表列出了 HttpResponseStatus 属性的可能值。 默认值为 302 (Found)。

关键字 说明
301 Permanent IIS 告知 Web 客户端所请求资源的位置已永久更改。 新位置在 Location HTTP 标头中指定。 此设置允许保留 HTTP URL 链接记录的 Web 客户端使用新位置更新存储的 URL。
302 Found IIS 告知 Web 客户端向 Location HTTP 标头中指定的位置发出新请求。
307 Temporary IIS 告知 Web 浏览器将带有原始数据的 POST 请求重新发出到新位置。 通常,当 Web 浏览器发出 POST 请求并从 Web 服务器接收 302 重定向消息时,浏览器会发出新位置的 GET 请求。 这会导致原始 POST 请求中的数据丢失。 如果浏览器收到 307 重定向,它可以重新发出 POST,同时原始数据保持不变。

示例

第一个示例展示了 HttpRedirectSection 类的所有属性,包括嵌入 SectionInformationHttpRedirect 属性。

第二个示例创建了四个通配符重定向元素,并尝试将它们添加到默认网站的 <httpRedirect> 节。 如果存在重复条目,则代码会报告该情况;否则,它会添加新条目。 最后,它显示所有条目的新计数以及每个条目的通配符和目标。

' 1) First example: Display the httpRedirect properties  
' for the default Web site.  
' Connect to the WMI WebAdministration namespace.  
Set oWebAdmin = _  
    GetObject("winmgmts:root\WebAdministration")  
  
' Get the httpRedirect section for the default Web site.  
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")  
oSite.GetSection "HttpRedirectSection", oSection  
  
' Display the nonembedded properties.  
WScript.Echo "=============================="  
WScript.Echo "HttpRedirectSection Properties"  
WScript.Echo "=============================="  
For Each vProp In oSection.Properties_  
    If (vProp.Name <> "HttpRedirect") And _  
    (vProp.Name <> "SectionInformation") Then  
        WScript.Echo vProp.Name & ": " & vProp.Value  
    End If  
Next  
  
' Display the contents of the SectionInformation property.  
WScript.Echo   
WScript.Echo "--------------------------------------"  
WScript.Echo "HttpRedirectSection.SectionInformation"  
WScript.Echo "--------------------------------------"  
For Each vProp In oSection.SectionInformation.Properties_  
    WScript.Echo vProp.Name & ": " & vProp.Value  
Next  
WScript.Echo   
  
' Display the WildcardRedirectElement instances in the  
' HttpRedirect array property.  
WScript.Echo "--------------------------------"  
WScript.Echo "HttpRedirectSection.HttpRedirect"  
WScript.Echo "--------------------------------"  
For Each oWildcardRedirectElement In oSection.HttpRedirect  
    For Each vProp In oWildcardRedirectElement.Properties_  
        WScript.Echo vProp.Name & ": " & vProp.Value  
    Next  
    WScript.Echo  
Next  
  
' 2) Second example: Add four WildcardRedirectElement  
' instances to the default Web site and display the result.  
' Connect to the WMI WebAdministration namespace.  
Set oWebAdmin = _  
    GetObject("winmgmts:root\WebAdministration")  
  
' Get the httpRedirect section for the default Web site.  
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")  
oSite.GetSection "HttpRedirectSection", oSection  
  
' Set up a loop to add four new redirects.  
For Counter = 1 To 4  
    ' Create a new instance of WildcardRedirectElement.  
    ' Note that you do not need to use SpawnInstance_.  
    Set oWildcardRedirect = _  
        oWebAdmin.Get("WildcardRedirectElement")  
  
    ' Specify the page to be redirected.  
    oWildcardRedirect.Wildcard = _  
        "Adatum.com/Page" & Counter & ".htm"  
  
    ' Specify the destination for the redirected page.  
    oWildcardRedirect.Destination = _  
        "Contoso.com/Page" & Counter & ".htm"  
  
    ' Prepare to catch duplicate entries.  
    On Error Resume Next  
  
    ' Attempt to add the wildcard entry to the collection.   
    ' (You do not need to use Put_ to save the change.)  
    oSection.Add "HttpRedirect", oWildcardRedirect  
  
    ' Catch duplicate entries.  
    If Err.Number = -2147024713 Then  
        WScript.Echo "Redirect entry for """ & _  
        oWildcardRedirect.Wildcard & """ already exists."  
        WScript.Echo  
    End If  
Next  
  
' Update the contents of the oSection variable.  
oSection.Refresh_  
  
' Display a header and the new number of entries.  
WScript.Echo "--------------------------------"  
WScript.Echo "HttpRedirectSection.HttpRedirect"  
WScript.Echo "--------------------------------"  
WScript.Echo "The number of redirect entries is now " & _  
    UBound(oSection.HttpRedirect) + 1 & "."  
WScript.Echo   
  
' Display the new set of wildcard redirect elements.  
For Each oWildcardRedirectElement In oSection.HttpRedirect  
    WScript.Echo "Wildcard: " & _  
        oWildcardRedirectElement.Wildcard & vbTab & _  
        "Destination: " & _  
        oWildcardRedirectElement.Destination  
    WScript.Echo  
Next  
  

继承层次结构

ConfigurationSection

ConfigurationSectionWithCollection

HttpRedirectSection

要求

类型 描述
客户端 - IIS 7.0(在 Windows Vista 上)
- IIS 7.5(在 Windows 7 上)
- IIS 8.0(在 Windows 8 上)
- IIS 10.0(在 Windows 10 上)
服务器 - IIS 7.0(在 Windows Server 2008 上)
- IIS 7.5(在 Windows Server 2008 R2 上)
- IIS 8.0(在 Windows Server 2012 上)
- IIS 8.5(在 Windows Server 2012 R2 上)
- IIS 10.0(在 Windows Server 2016 上)
产品 - IIS 7.0、IIS 7.5、IIS 8.0、IIS 8.5、IIS 10.0
MOF 文件 WebAdministration.mof

另请参阅

ConfigurationSectionWithCollection 类
SectionInformation 类
WildcardRedirectElement 类