Vista 64에서 "데이터 실행 방지"로 인해(VS2008) 로컬 ASP.Net 개발 서버(일명 Cassini)가 종료됩니다.

StackOverflow https://stackoverflow.com/questions/19349

  •  09-06-2019
  •  | 
  •  

문제

가끔 ASP.Net 응용 프로그램(Visual Studio 2008로 작성되고 Vista 64비트에서 실행)을 디버깅하는 동안 로컬 ASP.Net 개발 서버(예:'Cassini')가 응답을 중지합니다.

"DEP(데이터 실행 방지)"로 인해 WebDev.WebServer.exe가 종료되었다는 메시지가 자주 나타납니다.

이벤트 로그에는 "WebDev.WebServer.exe가 작동을 멈췄습니다"라고만 나와 있습니다.

DEP가 기본적으로 켜져 있기 때문에 Vista 64비트에서 이 '문제'가 더 자주 발생한다고 들었습니다.따라서 DEP를 끄면 문제가 '해결'될 수 있습니다.

하지만 궁금합니다.

DEP가 프로세스를 종료하게 만드는 Cassini의 알려진 버그/상황이 있습니까?

또는 데이터 실행 방지를 비활성화하면 실제적인 위험은 무엇입니까?

도움이 되었습니까?

해결책

확실하게 알 수 있는 유일한 방법은 Cassini 소스를 자세히 살펴보고 힙에 코드를 생성한 다음 NX 플래그를 지우지 않고 실행하는 영역이 있는지 확인하는 것입니다.

하지만 그렇게 하는 대신 IIS를 사용하는 것은 어떨까요?

편집하다:

DEP를 비활성화하면 보안 허점이 생길 위험이 있습니다.DEP는 힙에서 임의 생성된 코드가 실행되는 것을 허용하지 않는 방식으로 작동합니다.이는 맬웨어 프로그램이 합법적인 프로그램의 데이터 세그먼트에 코드를 삽입하는 것을 방지하는 데 도움이 됩니다.

다른 팁

당신은 Vista에 있습니다. iis는 더 좋아졌습니다(7). Cassini는 여전히 형편없었습니다.

따라서 호스트 헤더와 호스트 파일 항목을 사용하여 iis에서 이 앱을 시작하세요.

필요한 경우 DEP에서 특정 프로그램을 제외하도록 허용할 수 있습니다.

처럼 홍옥

이는 애플리케이션에 있을 수 있는 모든 취약점을 열어준다고 언급합니다.

Visual Studio에서 IIS를 사용하는 것은 1.1/VS02/03일에 그랬던 것처럼 고통스럽지 않습니다.Cassini 서버보다 IIS를 선호하는 데에는 많은 이유가 있습니다. 도미닉 바이어):

카시니는 유해한 것으로 간주됨
내가 카시니를 추천하지 않는 또 다른 이유

Dominick은 IIS 및 보안 분야의 '최고의 인물'입니다.

웹 앱용으로 IIS를 사용할 때 저는 항상 IIS에서 먼저 앱을 만들고, 내가 선호하는 폴더를 가리킨 다음 VS를 사용하여 프로젝트를 만듭니다.이는 웹 앱으로 인해 c:\inetpub\wwwroot가 복잡해지지 않는다는 것을 의미합니다.

물론 이제 IIS7.x를 대상으로 하는 경우 Visual Studio에서 ASP.NET 응용 프로그램을 개발하기 위한 확실한 선택인 IISExpress가 있습니다.

답변해주셔서 감사합니다.나는 .net 1.x 시대에 IIS에 대한 혐오감을 갖게 되었기 때문에 지금까지 IIS를 재사용하는 것을 거부해 왔습니다.

곁에:ChanChan과 Jonathan의 똑같이 허용되는 두 가지 답변 중에서 선택할 때 a) 그가 먼저 응답했고 b) 그의 대표자가 현재 더 낮기 때문에 나는 임의로 Jonathan의 답변을 '수락됨'으로 표시했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top