안녕하세요..
이번엔 원격디버깅에 대해서 알아보기로 하겠습니다.
이 항목은 공부하시는 분보다는 실무를 하시는 분이 프로젝트 초기에 많이 고생하시는 문제인 것 같습니다.
보통 서비스를 하는 리얼서버는 프레임웍만 설치를 합니다.
하지만, 개발서버는 디버깅이 필요하기 때문에, 프레임웍외에 일부 추가요소를 설치해야합니다.
아래 내용은 대부분 MSDN에 나와있는 내용이긴 합니다.
하지만, 실패하시는 분들이 상당히 많은데, 그이유는, 보통 클라이언트쪽 세팅이 잘못된 경우가 많습니다.
서버 컴퓨터 구성
Visual Studio .NET이 설치된 컴퓨터 한 대에서 개발을 수행하고 웹 응용 프로그램을 원격 웹 서버 컴퓨터에 배포하려는 경우 컴퓨터를 올바르게 구성해야 합니다. 이렇게 하려면 웹 서버 컴퓨터에 일부 Visual Studio .NET 구성 요소를 합니다.
참고 : 개발 컴퓨터를 웹 서버로 사용하는 경우 이 과정을 따를 필요가 없습니다. 컴퓨터에 Visual Studio .NET을 설치하면 서버가 올바르게 구성됩니다.
별도의 Visual Studio .NET용 웹 서버를 구성하려면
1. 웹 서버 컴퓨터에서 Visual Studio .NET 설치 프로그램을 실행하고 1단계를 수행하여 Windows Component Update를 설치합니다.
이렇게 하면 서버 컴퓨터에 .NET Framework가 설치됩니다. 이 단계가 완료되면
2단계, Visual Studio .NET 설치가 나타납니다.
2. 2단계 설치 과정을 시작합니다. 설치 창의 왼쪽 창에 여러 가지 설치 옵션이 있습니다.
여기에서 다음을 수행해야 합니다.
a. 서버 구성 요소를 제외한 모든 옵션을 선택 해제합니다.
b. 서버 구성 요소 노드를 확장하여 웹 개발 및 원격 디버거를 선택합니다.
c. 지금 설치를 클릭하여 설치를 계속합니다.
3. FrontPage Server Extensions가 구성되어 있는지 확인합니다.
자세한 내용은 Visual Studio .NET CD1 또는 DVD의 Setup\WebServer.htm을 참조하십시오.
4. 웹 프로젝트를 만들 사용자를 VS 개발자 그룹에 추가합니다.
중요 디버깅 정보
aspnet_wp.exe에서 실행 중인 응용 프로그램을 디버깅하려면 사용자가 Administrator이거나,
Administrators 그룹의 구성원이거나, aspnet_wp.exe가 사용자 계정에서 실행되도록
aspnet_wp.exe의 machine.config 파일을 편집해야 합니다.
inetinfo.exe에서 실행 중인 응용 프로그램을 디버깅하려면 사용자가 inetinfo.exe를
실행 중인 컴퓨터의 Administrator이거나 Administrators 그룹의 구성원이어야 합니다.
이러한 이유는 ASP.NET 응용 프로그램이 보안 설정에 따라 inetinfo.exe(IIS 프로세스)
또는 aspnet_wp.exe(ASP 작업자 프로세스)에서 실행되기 때문입니다.
aspnet_wp.exe 프로세스는 기본적으로 SYSTEM으로 실행됩니다.
서버쪽은 대부분 올바르게 설치하시는 것 같습니다. 이제부턴 클라이언트 부분입니다.. 여기가 중요합니다.
클라이언트 디버깅 환경구성
모든 운영 체제에 전체 원격 디버깅 지원을 설치하려면 |
1. 시작 메뉴에서 실행을 선택합니다. 2. 다음과 같이 입력합니다. msiexec /qb+ /i n:\<Visual Studio .NET CD1>\vs_setup.msi NOVSUI=1 TRANSFORMS="n:\<Visual Studio .NET CD1>\Setup\Rmt9x.mst" SERVER_SETUP=1 ADDLOCAL=Full_Remote_Debugging
예: CD가 D드라이브인 경우 msiexec /qb+ /i d:\vs_setup.msi NOVSUI=1 TRANSFORMS="d:\Setup\Rmt9x.mst" SERVER_SETUP=1 ADDLOCAL=Full_Remote_Debugging |
이렇게 하시면 대부분의 세팅은 마무리 된 겁니다.
그렇지만, 이후에도 한가지 알아두셔야 할 점이 있습니다.
계정문제인데, 서버의 로그인ID와 패스워드가 로컬 컴퓨터의 로그인ID와 패스워드가 일치해야 합니다.
그리고 해당 로그인ID로 로그인하셔야만 합니다.
만약 패스워드라도 다를 경우, 프로젝트를 열거나, 컴파일은 가능하지만 디버깅은 불가능합니다.
모쪼록, 좋은 정보였으면 좋겠습니다.