Text/WATERSWEA
1. Web.config 파일 이해
Web.config 파일은 ASP.NET 웹 응용 프로그램의 구성 정보(예: ASP 설정에 가장 일반적으로 사용되는 인증 방법)를 저장하는 데 사용되는 XML 텍스트 파일입니다. .NET 웹 애플리케이션), 이는 애플리케이션의 모든 디렉터리에 나타날 수 있습니다. VB.NET을 통해 새 웹 응용 프로그램을 만들 때 기본
Web.config 파일에는 기본 구성 설정이 포함되어 있으며 모든 하위 디렉터리는 해당 구성 설정을 상속합니다. 하위 디렉터리의 구성 설정을 수정하려는 경우 하위 디렉터리에 새 Web.config 파일을 만들 수 있습니다. 상위 디렉터리에서 상속된 구성 정보 외에 구성 정보를 제공할 수 있으며 상위 디렉터리에 정의된 설정을 재정의하거나 수정할 수도 있습니다.
런타임 시 Web.config 파일에 대한 수정 사항은 서비스를 다시 시작하지 않고도 적용될 수 있습니다(참고: <processModel> 섹션에 대한 예외). 물론 Web.config 파일은 확장 가능합니다. 새로운 구성 매개변수를 사용자 정의하고 구성 섹션 핸들러를 작성하여 이를 처리할 수 있습니다.
2. web.config 구성 파일(기본 구성 설정)<configuration>
에는 다음 코드가 모두 들어 있어야 합니다.
<system.web>
및
</system.web>
</configuration>
, 학습 목적으로 다음 예제에서는 이 XML 태그가 생략되었습니다.
1. <authentication> 섹션
기능: ASP.NET 인증 지원을 구성합니다(Windows, Forms, PassPort, 없음). 이 요소는 컴퓨터, 사이트 또는 응용 프로그램 수준에서만 선언할 수 있습니다. <authentication> 요소는 <authorization> 섹션과 함께 사용해야 합니다.
예시:
다음 예시는 로그인하지 않은 사용자가 인증이 필요한 웹 페이지에 접속하면 해당 웹 페이지가 자동으로 로그인 웹 페이지로 이동하는 예시입니다.
<인증 모드="양식" >
<forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>
</authentication>
loginUrl 요소는 로그인 웹 페이지의 이름을 나타내고, name은 쿠키 이름을 나타냅니다.
2.
<authorization> 섹션의 역할. : URL 리소스에 대한 클라이언트 액세스를 제어합니다(예: 익명 사용자 액세스 허용). 이 요소는 모든 수준(컴퓨터, 사이트, 응용 프로그램, 하위 디렉터리 또는 페이지)에서 선언할 수 있습니다. <authentication> 섹션과 함께 필요합니다.
예: 다음 예에서는 익명 사용자
<authorization>
에 대한 액세스를 비활성화합니다.
<사용자 거부="?"/>
</authorization>
참고: user.identity.name을 사용하면 현재 인증된 사용자 이름을 얻을 수 있습니다.
web.Security.FormsAuthentication.RedirectFromLoginPage 메소드는 인증된 사용자를 사용자가 방금 요청한 페이지로 리디렉션합니다. 구체적인 예는
양식 확인 http://www.fanvb.net/websample/dataauth.aspx
를
참조하세요.> 섹션
역할: ASP.NET에서 사용되는 모든 컴파일 설정을 구성합니다. 기본 디버그 특성은 "True"입니다. 프로그램을 컴파일하고 사용하기 위해 전달한 후에는 True로 설정해야 합니다. 자세한 내용은 Web.config 파일에 설명되어 있으며 여기에서는 예제가 생략됩니다.
4. <customErrors>
역할: ASP용. NET 애플리케이션 사용자 정의 오류 메시지에 대한 정보를 제공합니다. XML Web services에서 발생하는 오류에는 적용되지 않습니다.
예: 오류가 발생하면 사용자 정의 오류 페이지로 이동합니다.
<customErrors defaultRedirect="ErrorPage.aspx" 모드="RemoteOnly">
</customErrors>
defaultRedirect 요소는 사용자 정의된 오류 웹 페이지의 이름을 나타냅니다. 모드 요소는 로컬 웹 서버에서 실행되지 않는 사용자에게 사용자 정의(친숙한) 정보를 표시함을 나타냅니다.
5.
<httpRuntime> 섹션의 역할: ASP.NET HTTP 런타임 설정을 구성합니다. 이 섹션은 컴퓨터, 사이트, 응용 프로그램 및 하위 디렉터리 수준에서 선언될 수 있습니다.
예: 사용자가 업로드하는 파일의 최대 크기는 4M, 최대 시간은 60초, 최대 요청 수는 100개로 제어
<httpRuntime maxRequestLength="4096" ExecutionTimeout="60" appRequestQueueLimit="100"/>
6. <pages>
역할: 페이지에 대한 특정 구성 설정을 식별합니다(예: 세션 상태 활성화 여부, 보기 상태, 사용자 입력 감지 여부 등). <페이지>는 컴퓨터, 사이트, 응용 프로그램 및 하위 디렉터리 수준에서 선언할 수 있습니다.
예: 사용자가 브라우저에 입력한 콘텐츠에 잠재적으로 위험한 데이터가 있는지 탐지하지 않습니다. (참고: 이 항목은 기본적으로 탐지됩니다. 비 탐지를 사용할 경우 사용자 입력을 인코딩하거나 확인해야 합니다.) 클라이언트 페이지가 포스트백될 때 암호화된 보기 상태를 검사하여 클라이언트 측에서 보기 상태가 변조되지 않았는지 확인합니다. (참고: 이 항목은 기본적으로 확인되지 않습니다.)
<pages buffer="true" enableViewStateMac="true" verifyRequest="false"/>
7. <sessionState>
함수: 현재 애플리케이션에 대한 세션 상태 설정을 구성합니다(예: 세션 상태가 저장되는 세션 상태를 활성화하려면)
예:
<sessionState mode="InProc" cookieless="true" timeout="20"/>
</sessionState>
참고:
mode="InProc"는 세션 상태를 로컬에 저장함을 의미합니다(원격 서버나 SAL 서버에 저장하거나 세션 상태를 비활성화하도록 선택할 수도 있음)
cookieless="true"는 다음을 의미합니다. 지원 쿠키가 사용될 때 세션 상태가 활성화됩니다(기본값은 False)
timeout="20"은 세션이 유휴 상태일 수 있는 시간(분)을 의미합니다
.8. <trace>
기능: 주로 사용되는 ASP.NET 추적 서비스를 구성합니다
.오류가 발생한 위치를 확인하기 위한 프로그램 테스트.
예: 다음은 Web.config의 기본 구성입니다.
<traceenabled="false" requestLimit="10" pageOutput="false" TraceMode="SortByTime" localOnly="true" />
참고:
활성화="false"는 다음을 의미합니다. 추적 활성화가 아님 requestLimit="10"은 서버에 저장된 추적 요청 수를 지정합니다.
pageOutput="false"는
추적 유틸리티를 통해서만 추적 출력에 액세스할 수 있음을 지정합니다.
추적이 처리되는 순서
localOnly="true"는 추적 뷰어(trace.axd)가 호스트 웹 서버에만 사용됨을 의미합니다
. 3. Web.config 파일 구성 섹션 사용자 지정 Web.config
파일 구성 섹션을 사용자 지정하는 프로세스 두 단계로 나누어진다.
하나는 구성 섹션의 이름과 구성 파일 상단의 <configSections> 및 </configSections> 태그 사이에 해당 섹션의 구성 데이터를 처리하는 .NET Framework 클래스의 이름을 선언하는 것입니다.
두 번째는 <configSections> 영역 이후에 선언된 섹션에 대한 실제 구성 설정을 하는 것입니다.
예: 데이터베이스 연결 문자열<configuration>
을 저장할 섹션 생성
<config섹션>
<section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</configSections>
<appSettings>
<add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>
</appSettings>
<system.web>
...
</system.web>
</configuration>
4. Web.config 파일에 액세스합니다.
ConfigurationSettings.AppSettings 정적 문자열 컬렉션을 사용하여 Web.config 파일에 액세스할 수 있습니다. 예: 위 예에서 설정된 연결 문자열을 가져옵니다.
Dim sconstr As String = ConfigurationSettings.AppSettings("SconStr")
Dim scon = 새 SqlConnection(sconstr)