다음을 통해 공유


리디렉션 헤더 <추가 추가>

개요

<add> 요소의 <redirectHeaders> 요소는 HTTP 응답 헤더를 IIS(인터넷 정보 서비스) 7이 HTTP 리디렉션에 추가할 사용자 지정 HTTP 헤더 컬렉션에 추가합니다.

참고

HTTP 헤더는 웹 서버의 응답에서 반환되는 이름 및 값 쌍입니다. 웹 서버의 모든 응답에서 반환되는 사용자 지정 헤더와 달리 리디렉션 헤더는 리디렉션이 발생할 때만 반환됩니다.

호환성

버전 참고
IIS 10.0 <add> 요소가 IIS 10.0에서 수정되지 않았습니다.
IIS 8.5 <add> 요소가 IIS 8.5에서 수정되지 않았습니다.
IIS 8.0 <add> 요소가 IIS 8.0에서 수정되지 않았습니다.
IIS 7.5 <add> 요소가 IIS 7.5에서 수정되지 않았습니다.
IIS 7.0 <add> 요소의 <redirectHeaders> 요소는 IIS 7.0에서 도입되었습니다.
IIS 6.0 해당 없음

설치 프로그램

<add> 요소의 <redirectHeaders> 요소는 IIS 7의 기본 설치에 포함됩니다.

방법

IIS 7의 요소에 값을 추가하기 위한 사용자 인터페이스가 <redirectHeaders> 없습니다. 프로그래밍 방식으로 요소에 값을 <redirectHeaders> 추가하는 방법에 대한 예제는 이 문서의 코드 샘플 섹션을 참조하세요.

구성

특성

attribute Description
name 필수 문자열 특성입니다.

리디렉션 헤더의 필드 이름을 지정합니다. 응답에서 필드 이름은 관련 필드 값 앞에 옵니다.
Value 선택적 문자열 특성입니다.

리디렉션 헤더의 필드 값을 지정합니다. 응답에서 필드 값은 관련 필드 이름을 따릅니다.

자식 요소

없음

구성 샘플

다음 구성 샘플은 IIS 7이 요청을 리디렉션할 때만 응답에 추가되는 사용자 지정 HTTP 헤더 및 값을 지정합니다.

<configuration>
   <system.webServer>
      <httpProtocol>
         <redirectHeaders>
            <add name="X-Custom-Redirect-Header" value="MyRedirectValue" />
         </redirectHeaders>
      </httpProtocol>
   </system.webServer>
</configuration>

참고

다음 기본 <httpProtocol> 요소는 IIS 7의 ApplicationHost.config 파일에 구성됩니다.

<httpProtocol>
   <customHeaders>
      <clear />
      <add name="X-Powered-By" value="ASP.NET" />
   </customHeaders>
   <redirectHeaders>
      <clear />
   </redirectHeaders>
</httpProtocol>

샘플 코드

다음 코드 샘플은 IIS 7이 요청을 리디렉션할 때만 응답에 추가되는 사용자 지정 HTTP 헤더 및 값을 지정합니다.

AppCmd.exe

appcmd.exe set config "Default Web Site" -section:system.webServer/httpProtocol /+"redirectHeaders.[name='X-Custom-Redirect-Header',value='MyRedirectValue']"

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetWebConfiguration("Default Web Site");
         ConfigurationSection httpProtocolSection = config.GetSection("system.webServer/httpProtocol");
         ConfigurationElementCollection redirectHeadersCollection = httpProtocolSection.GetCollection("redirectHeaders");

         ConfigurationElement addElement = redirectHeadersCollection.CreateElement("add");
         addElement["name"] = @"X-Custom-Redirect-Header";
         addElement["value"] = @"MyRedirectValue";
         redirectHeadersCollection.Add(addElement);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetWebConfiguration("Default Web Site")
      Dim httpProtocolSection As ConfigurationSection = config.GetSection("system.webServer/httpProtocol")
      Dim redirectHeadersCollection As ConfigurationElementCollection = httpProtocolSection.GetCollection("redirectHeaders")

      Dim addElement As ConfigurationElement = redirectHeadersCollection.CreateElement("add")
      addElement("name") = "X-Custom-Redirect-Header"
      addElement("value") = "MyRedirectValue"
      redirectHeadersCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site";
var httpProtocolSection = adminManager.GetAdminSection("system.webServer/httpProtocol", "MACHINE/WEBROOT/APPHOST/Default Web Site");
var redirectHeadersCollection = httpProtocolSection.ChildElements.Item("redirectHeaders").Collection;

var addElement = redirectHeadersCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "X-Custom-Redirect-Header";
addElement.Properties.Item("value").Value = "MyRedirectValue";
redirectHeadersCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site"
Set httpProtocolSection = adminManager.GetAdminSection("system.webServer/httpProtocol", "MACHINE/WEBROOT/APPHOST/Default Web Site")
Set redirectHeadersCollection = httpProtocolSection.ChildElements.Item("redirectHeaders").Collection

Set addElement = redirectHeadersCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "X-Custom-Redirect-Header"
addElement.Properties.Item("value").Value = "MyRedirectValue"
redirectHeadersCollection.AddElement(addElement)

adminManager.CommitChanges()