다음을 통해 공유


browserCaps 요소(ASP.NET 설정 스키마)

[이 설명서는 미리 보기 전용이며, 이후 릴리스에서 변경될 수 있습니다. 비어 있는 항목은 자리 표시자로 포함됩니다.]

지원되는 브라우저 및 해당 브라우저의 기능에 대한 설정을 지정합니다. 필요에 따라 browserCaps 요소를 업데이트하여 새 브라우저와 기능을 지정할 수 있습니다.

참고

Web.config 파일에 browserCaps 요소를 사용하여 브라우저를 정의하는 기능은 .NET Framework 2.0에서 더 이상 사용되지는 않지만 계속 지원됩니다.이 요소의 데이터는 컴퓨터 수준의 %SystemRoot%\Microsoft.NET\Framework\version\CONFIG\Browsers 폴더와 응용 프로그램 수준의 기존 App_Browser 폴더에 있는 브라우저 정의 파일(.browser)의 정보와 병합됩니다.자세한 내용은 브라우저 정의 파일 스키마(browsers 요소)를 참조하십시오.

<browserCaps>
   <result />
   <use />
   [browser capability property assignments]
   <filter>...</filter>
</browserCaps>

특성 및 요소

다음 단원에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성

설명

userAgentCacheKeyLength

선택적 String 특성입니다.

내부 캐시에 브라우저 기능 개체를 캐싱하기 위해 키로 사용할 브라우저 식별 문자열의 길이를 지정합니다. 브라우저 기능 개체에 대한 자세한 내용은 브라우저 정의 파일 스키마(browsers 요소)를 참조하십시오.

이 특성은 .NET Framework 버전 2.0에서 새로 도입되었습니다.

기본값은 "64"입니다.

자식 요소

요소

설명

filter

선택적 요소입니다.

특정 브라우저 정의에 개별 설정을 적용할 수 있는 검색 문자열의 목록을 지정합니다.

result

browserCaps 섹션의 구문 분석 결과를 저장하는 데 사용되는 HttpCapabilitiesBase 파생 클래스를 지정합니다. 해당 기능은 각 브라우저에 대해 키/값 문자열 쌍으로 저장됩니다.

이 요소는 .NET Framework 버전 2.0에서도 적용됩니다.

use

filter 요소와 case 요소에 저장된 브라우저 기능 정보를 구문 분석하는 데 사용되는 HTTP 요청 문자열을 지정합니다.

부모 요소

요소

설명

configuration

공용 언어 런타임 및 .NET Framework 응용 프로그램에서 사용하는 모든 구성 파일의 필수 루트 요소를 지정합니다.

system.web

구성 파일에서 ASP.NET 구성 설정에 대한 루트 요소를 지정하며, ASP.NET 웹 응용 프로그램을 구성하고 응용 프로그램의 동작 방식을 제어하는 구성 요소를 포함합니다.

설명

browserCaps 요소는 지원되는 브라우저 및 해당 브라우저의 기능에 대한 설정을 지정합니다. 필요에 따라 browserCaps 요소를 업데이트하여 새 브라우저와 기능을 지정할 수 있습니다.

유효한 브라우저 속성 목록을 보려면 HttpBrowserCapabilities를 참조하십시오.

capsVariableName=regular expression 형식의 줄은 대입을 나타냅니다. %{capsVariableName} 또는 ${captureGroupName} 구문을 match 특성 및 할당의 오른쪽에 사용합니다.

정규식을 사용하는 방법에 대한 자세한 내용은 .NET Framework 정규식을 참조하십시오. 전체 browserCaps 섹션과 이 구문에 대한 전체 예제를 보려면 .NET Framework와 함께 설치된 Machine.config 파일을 참조하십시오.

capsVariableName을 사용하여 캡처한 이름/값 쌍은 HttpCapabilitiesBase 클래스에서 상속된 HttpBrowserCapabilities 개체의 Item 속성을 통해 액세스할 수 있습니다. Item 속성은 C#의 기본 인덱서 속성입니다.

기본 구성

.NET Framework 버전 2.0에서는 지원되는 브라우저 및 기능을 지정하기 위해 browserCaps 요소 대신 브라우저 정의 파일을 사용하므로 다음과 같이 제한된 기본 browserCaps 요소가 루트 Web.config 파일에 구성되어 있습니다. 자세한 내용은 브라우저 정의 파일 스키마(browsers 요소)를 참조하십시오.

<browserCaps userAgentCacheKeyLength="64">
   <result 
      type="System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
   />
</browserCaps>

.NET Framework 버전 1.0 및 1.1에서 machine.config 파일에 구성된 기본 browserCaps 요소는 너무 많아서 여기에 모두 나열할 수 없습니다. 브라우저 데이터를 업데이트하려면 http://www.cyscape.com/browsercaps 사이트로 이동하십시오. 정기적 장치 업데이트로 이 브라우저 기능 섹션이 대체됩니다.

예제

다음 코드 예제에서는 모든 버전의 Microsoft Internet Explorer에 대해 User-Agent HTTP 헤더를 구문 분석하는 방법을 보여 줍니다. 이때 User-Agent 문자열의 형식이 거의 변경되지 않아야 합니다.

이 예제에서는 .NET Framework 정규식을 사용하고, 버전 번호를 User-Agent 문자열에서 HttpBrowserCapabilities 개체로 직접 이동하기 위해 부분식을 캡처하는 정규식 기능을 활용합니다.

이 파일에서는 Microsoft IIS(인터넷 정보 서비스)의 browscap.ini 파일과 비슷한 대입문 형식으로 이름/값 쌍을 지정합니다. 예를 들어 "browser=IE" 줄은 브라우저 필드의 값을 문자열 "IE"로 설정합니다.

<configuration>
 <system.web>
   <browserCaps>
      <result type="System.Web.HttpBrowserCapabilities, System.Web"/>
      <use var="HTTP_USER_AGENT"/>
      browser=Unknown
      version=0.0
      majorversion=0
      minorversion=0
      frames=false
      tables=false
      cookies=false
      backgroundsounds=false
      <filter>
    <case match="^Mozilla[^(]*\(compatible; MSIE 
       (?'ver'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*))
       (?'extra'.*)">
       browser=IE
       version=${ver}
       majorver=${major}
       minorver=${minor}
       <case match="^2\." with="%{version}">
          tables=true
          cookies=true
          backgroundsounds=true
          <case match="2\.5b" with="%{version}">
        beta=true
          </case>
       </case>
    </case>
      </filter>
   </browsercaps>
 </system.web>
</configuration>

요소 정보

구성 섹션 처리기

HttpCapabilitiesSectionHandler

구성 멤버

Browsers

구성 가능한 위치

Machine.config

루트 수준의 Web.config

응용 프로그램 수준의 Web.config

가상 또는 실제 디렉터리 수준의 Web.config

요구 사항

Microsoft IIS(인터넷 정보 서비스) 버전 5.0, 5.1 또는 6.0

.NET Framework 버전 2.0(사용되지 않음), 1.1 또는 1.0

Microsoft Visual Studio 2003 또는 Visual Studio 2005

참고 항목

작업

How to: Detect Browser Types in ASP.NET Web Pages

How to: Configure Specific Folders Using Location Settings

How to: Lock ASP.NET Configuration Settings

참조

system.web 요소(ASP.NET 설정 스키마)

configuration 요소(일반 설정 스키마)

browserCaps에 대한 filter 요소(ASP.NET 설정 스키마)

browserCaps에 대한 result 요소(ASP.NET 설정 스키마)

browserCaps에 대한 use 요소(ASP.NET 설정 스키마)

브라우저 정의 파일 스키마(browsers 요소)

System.Configuration

System.Web.Configuration

HttpCapabilitiesSectionHandler

Browsers

개념

ASP.NET Server Controls and Browser Capabilities

ASP.NET Configuration File Hierarchy

Securing Configuration

Configuration Inheritance

기타 리소스

일반 구성 설정(ASP.NET)

ASP.NET 구성 설정

Configuring ASP.NET Applications

ASP.NET Configuration API