IT_Programming/ASP.NET (WEB)

requiredfieldvalidate 오류 발생시 aspnet_regiis.exe -c의 의미

JJun ™ 2006. 3. 21. 16:36

ASP.NET IIS 등록 도구(Aspnet_regiis.exe)

여러 버전의 .NET Framework가 한 대의 컴퓨터에서 side-by-side 방식으로 실행되는

경우 ASP.NET 응용 프로그램에 매핑된 ASP.NET ISAPI 버전에 따라 응용 프로그램에

사용되는 공용 언어 런타임 버전이 결정됩니다. 관리자 또는 설치 프로그램은 ASP.NET IIS

등록 도구(Aspnet_regiis.exe)를 사용하여 해당 도구와 관련된 ASP.NET ISAPI 버전을

가리키도록 ASP.NET 응용 프로그램의 스크립트 맵을 쉽게 업데이트할 수 있습니다.

또한 이 도구를 사용하면 설치된 모든 ASP.NET 버전의 상태를 표시하고,

도구와 연관된 ASP.NET 버전을 등록하고, 클라이언트 스크립트 디렉터리를 만들고,

기타 구성 작업을 수행할 수 있습니다.

 

=============================================================================

 

C:\WINNT\Microsoft.NET\Framework\v1.0.3705288\aspnet_regiis.exe -c

실행하면 Validate관련 스크립트가 웹서비스들의 root폴더에 자동으로 생성됩니다.

 

=============================================

 

[ 에 러 ]

스크립트 라이브러리

'/aspnet_client/system_web/1_0_3705_288/WebUIValidation.js를 찾을 수 없습니다.'

라는 경고창 에러 발생

 

[ 해 결 ]

WebUIValidation.js파일이 없다는 메시지이므로 스크립트 파일을 재설치 해야합니다.

 \microsoft.net\framework\버전\ 디렉토리에서 aspnet_regiis.exe -c

명령을 실행하면 됩니다.

 

-------------------------------------------------------------------------------------

 

 

[ 에 러 ]

Visual Studio .NET has detected that the specified Web server is not running ASP.NET version 1.1. You will be unable to run ASP.NET Web applications or services.

 

[ 해 결 ]

명령 프롬프트의 아래 경로에서 다음의 명령을 실행해 보세요.

C:\WINNT\Microsoft.NET\Framework\v1.0.3705>
//또는 v1.1.4322 등의 프레임워크의 최종버전 폴더에서...

aspnet_regiis -i 또는 aspnet_regiis -i -enable

위의 방법으로 해보면 90% 이상 처리됩니다.

 

=============================================================================================

 

Aspnet_regiis [options]

 

다음 옵션 중에서 옵션을 하나 이상 지정할 수 있습니다.

 

옵션

 

설명

-c 클라이언트측 유효성 검사 스크립트와 같은 ASP.NET의 클라이언트측 스크립트를 각 IIS 사이트 디렉터리의 aspnet_client 하위 디렉터리에 설치합니다.
참고   Aspnet_regiis.exe와 연관된 ASP.NET 버전의 클라이언트측 스크립트만 설치됩니다.
-e 각 IIS 사이트 디렉터리의 aspnet_client 하위 디렉터리에서 ASP.NET의 클라이언트측 스크립트를 제거합니다.
참고   Aspnet_regiis.exe와 연관된 ASP.NET 버전의 클라이언트측 스크립트만 제거됩니다.
-ea 각 IIS 사이트 디렉터리의 Aspnet_client 하위 디렉터리에서 모든 ASP.NET 버전의 클라이언트측 스크립트를 제거합니다.
-i Aspnet_regiis.exe와 연관된 ASP.NET 버전을 설치하고 IIS 메타베이스 루트 및 그 아래 수준에 있는 스크립트 맵을 업데이트합니다.
참고   이전 ASP.NET 버전을 사용하는 응용 프로그램의 스크립트 맵만 업데이트됩니다. 이후 버전을 사용하는 응용 프로그램은 영향을 받지 않습니다.
-ir Aspnet_regiis.exe와 연관된 ASP.NET 버전을 설치하고 IIS에 ASP.NET을 등록하기만 합니다.
참고   이 옵션은 스크립트 맵을 업데이트하지 않습니다. ASP.NET을 설치하고 스크립트 맵을 업데이트하려면 -i 옵션을 사용하십시오.
-k path 지정된 응용 프로그램 루트 경로 및 해당 하위 디렉터리의 모든 ASP.NET 응용 프로그램에서 모든 ASP.NET 버전에 대한 스크립트 맵을 제거합니다.
-kn path 지정된 응용 프로그램 루트 경로에서만 ASP.NET 응용 프로그램에서 모든 ASP.NET 버전에 대한 스크립트 맵을 제거합니다.
참고   이 옵션은 path의 하위 디렉터리에 있는 응용 프로그램에는 영향을 주지 않습니다.
-lk ASP.NET이 매핑된 모든 IIS 메타베이스 키의 경로 및 버전을 표시합니다.
참고   부모 키에서 ASP.NET 스크립트 맵을 상속하는 키는 표시되지 않습니다.
-lv 컴퓨터에 설치되어 있는 모든 ASP.NET 버전의 상태 및 설치 경로를 표시합니다.
-r IIS 메타베이스 및 그 아래 수준에 있는 모든 스크립트 맵을 Aspnet_regiis.exe와 연관된 ASP.NET ISAPI 버전을 가리키도록 업데이트합니다.
참고   기존의 모든 스크립트 맵이 현재 버전에 관계없이 Aspnet_regiis.exe와 연관된 ASP.NET ISAPI 버전을 가리키도록 업데이트됩니다.
-s path Aspnet_regiis.exe와 연관된 ASP.NET ISAPI 버전을 가리키는 스크립트 맵을 지정된 응용 프로그램 루트 경로 및 해당 하위 디렉터리의 모든 ASP.NET 응용 프로그램에 설치합니다. 지정된 경로 및 그 아래 수준에 있으면서 이전 ASP.NET ISAPI 버전을 사용하는 기존의 모든 스크립트 맵이 업데이트됩니다.
-sn path Aspnet_regiis.exe와 연관된 ASP.NET ISAPI 버전을 가리키는 스크립트 맵을 지정된 응용 프로그램 루트 경로의 ASP.NET 응용 프로그램에 설치합니다. 지정된 경로에 있으면서 이전 ASP.NET ISAPI 버전을 사용하는 기존의 모든 스크립트 맵이 업데이트됩니다.
참고   이 옵션은 path의 하위 디렉터리에 있는 응용 프로그램에는 영향을 주지 않습니다.
-u Aspnet_regiis.exe와 연관된 ASP.NET 버전을 컴퓨터에서 제거합니다. 이 버전의 ASP.NET ISAPI에 대한 기존의 스크립트 맵은 설치된 나머지 ASP.NET ISAPI 버전 중 가장 최신 버전으로 자동으로 다시 매핑됩니다.
-ua 모든 ASP.NET 버전을 컴퓨터에서 제거합니다.
-? 이 도구의 명령 구문 및 옵션을 표시합니다.

설명

한 대의 컴퓨터에 여러 ASP.NET 버전이 설치되어 있을 경우 ASP.NET이 side-by-side 방식으로

실행된다고 말합니다. 이러한 설치에서 IIS(인터넷 정보 서비스)는 어떤 버전의 ASP.NET ISAPI(aspnet_isapi.dll)가 ASP.NET 응용 프로그램의 페이지를 처리할지 알아야 합니다.

ASP.NET 응용 프로그램과 연관된 ASP.NET ISAPI 버전에 따라 응용 프로그램에 사용되는

공용 언어 런타임 버전이 결정됩니다. ASP.NET 응용 프로그램은 IIS의 스크립트 맵을 통해

ASP.NET ISAPI 버전과 연관됩니다. ASP.NET 응용 프로그램의 구성 프로세스를 단순화하기 위해

각 ASP.NET 버전에는 링크된 Aspnet_regiis.exe 버전이 제공되어 있습니다.

참고   각 .NET Framework 버전에는 고유한 Aspnet_regiis.exe 버전이 포함되어 있습니다. 도구의 각 버전은 연관된 .NET Framework 버전에만 적용할 수 있으므로 적절한 버전의 도구를 사용하여 ASP.NET 응용 프로그램을 구성해야 합니다.

Aspnet_regiis.exe는 해당 도구와 연관된 .NET Framework 버전에 ASP.NET 응용 프로그램을

다시 매핑할 때 주로 -s 또는 -sn 옵션과 함께 사용됩니다.

지정된 루트 경로 및 해당 하위 디렉터리 전체에서 응용 프로그램을 업데이트하려면

-s 옵션을 사용합니다.

하위 디렉터리의 응용 프로그램을 업데이트하지 않으려면 -sn 옵션을 사용합니다.

컴퓨터에 있는 기존의 모든 ASP.NET 응용 프로그램의 스크립트 맵을 한 번에 모두 업데이트하려면

-r 옵션을 사용합니다.

참고   path 매개 변수는 실제 경로가 아니라 응용 프로그램의 루트 경로를 참조합니다. 예: W3SVC/1/ROOT/SampleApp1

반대로, -k 또는 -kn 옵션을 사용하고 응용 프로그램의 루트 경로를 지정하여

응용 프로그램에서 임의의 ASP.NET 버전에 대한 스크립트 맵을 제거할 수 있습니다.

참고   지정된 루트 경로가 부모 루트 경로에서 해당 스크립트 맵을 상속하면 -k-kn 옵션을 사용해도 효과가 없습니다.

또한 링크된 ASP.NET 버전을 설치 및 제거하는 데에도 이 도구를 사용할 수 있습니다.

ASP.NET을 설치하고 기존의 모든 ASP.NET 응용 프로그램의 스크립트 맵을 업데이트하려면

-i 옵션을 사용합니다. 스크립트 맵을 업데이트하지 않고 ASP.NET을 설치하려면 -ir 옵션을

사용합니다. 이 도구와 연관된 ASP.NET 버전을 제거하려면 -u 옵션을 사용합니다.

컴퓨터에서 모든 ASP.NET 버전을 제거하려면 -ua 옵션을 사용합니다.

Aspnet_regiis.exe를 사용하여 ASP.NET에 대한 정보를 볼 수 있습니다.

설치된 모든 ASP.NET 버전의 상태 및 설치 경로를 나타내려면 -lv 옵션을 사용합니다.

ASP.NET이 매핑되어 있는 모든 IIS 메타베이스 키의 경로를 보려면 -lk 옵션을 사용합니다.

클라이언트측 유효성 검사와 같은 클라이언트측 스크립트는 Aspnet_regiis.exe를 사용하여

설치 및 제거할 수 있습니다. 해당 도구와 연관된 ASP.NET 버전의 클라이언트측 스크립트를

각 IIS 사이트 디렉터리의 aspnet_client 하위 디렉터리에 설치하려면 -c 옵션을 사용합니다.

해당 도구와 연관된 ASP.NET 버전의 클라이언트측 스크립트만 제거하려면 -e 옵션을 사용합니다.

설치된 모든 ASP.NET 버전의 클라이언트측 스크립트를 제거하려면 -ea 옵션을 사용합니다.

ASP.NET의 side-by-side 실행에 대한 자세한 내용은 ASP.NET의 Side-by-Side 지원을 참조하십시오. 스크립트 맵 및 응용 프로그램 루트 경로에 대한 자세한 내용은 IIS 설명서(http://localhost/iishelp)를 참조하십시오. IIS 설명서를 보려면 IIS가 설치되어 있어야 합니다.

예제

다음 명령은 Aspnet_regiis.exe와 연관된 ASP.NET 버전을 가리키는 스크립트 맵을

SampleApp1 응용 프로그램과 해당 하위 응용 프로그램에 설치합니다.

Aspnet_regiis -s W3SVC/1/ROOT/SampleApp1

다음 명령은 SampleApp1 응용 프로그램의 스크립트 맵만 업데이트하며 하위 디렉터리의

응용 프로그램에는 영향을 주지 않습니다.

Aspnet_regiis -sn W3SVC/1/ROOT/SampleApp1

다음 명령은 해당 도구와 연관된 ASP.NET 버전을 설치하고

기존의 모든 ASP.NET 응용 프로그램의 스크립트 맵을 업데이트합니다.

현재 이전 ASP.NET버전에 매핑되어 있는 응용 프로그램만 영향을 받습니다.

Aspnet_regiis -i

다음 명령은 해당 도구와 연관된 ASP.NET 버전을 설치하지만 기존의 ASP.NET 응용 프로그램의

스크립트 맵은 업데이트하지 않습니다.

Aspnet_regiis -ir

다음 명령은 컴퓨터에 설치되어 있는 모든 ASP.NET 버전의 상태 및 설치 경로를 표시합니다.

Aspnet_regiis -lv