IIS Express 웹 응용 프로그램을 중지 한 후 실행중인 사이트를 즉시 종료


173

IDE에서 응용 프로그램을 중지하고 싶을 때 Visual Studio 2012를 사용하고 있는데 응용 프로그램은 여전히 ​​IIS Express에서 실행 중이며 실행중인 응용 프로그램을 탐색하고 사용할 수는 있지만 지금은 할 수 없습니다. IIS 중지 버튼을 누르면 응용 프로그램이 즉시 종료됩니다. 설정을 변경하지 않았 음을 기억합니다. 첫날과 같은 방식으로 어떻게해야합니까?


1
'재생'대신 '브라우저에서보기'를 시도하십시오. 기본 브라우저를 변경 했습니까? IE는 중지되면 자동으로 종료되지만 Chrome은 종료되지 않습니다.
Emanuele Greco

아니요, FF를 사용하고 있지만 때로는 응용 프로그램을 디버깅해야합니다.
saber

나는 이것이 IIS Express와 관련이 있다고 생각합니다.
saber

1
중지 버튼을 클릭하는 대신 디버그 메뉴에서 모두 분리를 사용할 수도 있습니다.
jessehouwing

1
디버깅중인 프로세스에서 디버거를 분리했지만 진행중인 프로세스를 종료하지는 않습니다.
jessehouwing

답변:


344

최근에 디버깅을 중단 한 직후에 IIS Express가 갑자기 중지 된 비슷한 상황에 처했습니다. "Edit Enable and Continue"를 켠 후에 이런 일이 일어났습니다 . 따라서이 기능을 사용하지 않으면 디버깅이 중지 된 후에도 IIS Express가 계속 실행되고 있음을 알 수 있습니다.

프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 클릭 한 다음 왼쪽에서 '웹'탭을 선택하고 Enable Edit and Continue확인란을 선택 취소하십시오 .


3
이것이 문제를 해결했음을 확인할 수 있습니다.
Maxime Rouiller 2016 년

51
이 작동합니다! 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 클릭 한 다음 왼쪽에서 '웹'탭을 선택하고 '편집 및 계속 활성화'확인란의 선택을 취소하십시오.
nv.snow 2008 년

6
효과가있다. Visual Studio 2013에서 "도구-> 옵션"을 열고 "디버깅-> 편집 및 계속"트리에서 "편집 및 계속 활성화"상자를 선택 취소하십시오.
Renzo Ciot

3
이 기능에 대한 자세한 내용은 여기 ( blogs.msdn.com/b/webdev/archive/2013/07/11/…)
gor

5
아니요, 이것은 나쁜 해결책입니다-아래의 @jessehouwing에 의해 게시 된 올바른 해결책을 참조하십시오.
Josh M.

85

VS2010 및 VS2012에서는 새 웹 응용 프로그램 프로젝트를 만들 때 기본적으로 편집 및 계속 옵션이 비활성화되어 있습니다. VS2013에서는 기본적으로 켜져 있습니다.

이 옵션은 웹 프로젝트의 속성 창의 웹 탭에서 찾을 수 있습니다.

옵션 vs2013 편집 및 계속

"편집 사용 및 계속 사용"을 설정하면 VS 디버거가 IIS Express에서 웹 응용 프로그램을 시작합니다. 디버깅을 중지하면 IIS Express도 닫힙니다. 이 동작을 수행하면 디버깅 중에 IIS Express 시스템 트레이가 표시되고 디버깅 후에 사라집니다. 이 동작은 편집 및 계속 사용 옵션이 설정된 경우 VS2012와 동일합니다.

개발 중에 "편집 및 계속"기능이 필요하지 않고 디버깅 세션 후에 IIS Express를 유지 하려면 편집 및 계속 활성화 옵션을 해제하면됩니다 .

나는 당신이 "편집 및 계속"사용하려는 또는 당신이 Asp.net 5 사이트를 개발하고있다 f를 (ASP.NET 5 프로젝트는 편집이없는 프로젝트 속성에서 체크 박스를 계속) 당신은 "DETECH 모든"명령을 사용해야합니다 디버깅을 중지합니다.

디버거는 iis 프로세스를 닫지 않고 분리합니다.

다시 디버깅을 시작할 때까지 "편집 및 계속"기능이 작동하지 않습니다.

여기에 이미지 설명을 입력하십시오


D : 그림 가치가 천 단어입니다
giammin

64

(X) STOP버튼을 누르는 대신 Detach all디버그 메뉴에서 메뉴 항목을 사용할 수 있습니다 . 가장 큰 차이점은 중지 버튼이 현재 디버깅중인 프로세스를 종료하고 모두 분리는 디버거를 프로세스에서 분리하지만 종료하지는 않는다는 것입니다.

일반적인 IIS 작업자 프로세스는 종료 될 것입니다,하지만이 서비스로 실행하는 데 사용하기 때문에, 그것은 또한 자동으로 다시 시작됩니다 따라서 당신은을 통해 프로세스를 다시 시작하지 않고 계속 사용할 수 있습니다 |> Debug또는 |> Start without debugging.

참조 용 스크린 샷

툴바 디버깅에 '편집 및 계속'버튼 추가.


3
이것은 실제 답변에 더 가깝습니다. 'EDIT AND CONTINUE'옵션은 기능입니다. 디버깅 프로세스를 리스닝 프로세스에 연결 및 분리하는 것은 여기서 논의의 밑줄 개념이며, 클릭 중지가 해당 리스닝 프로세스를 종료하는지 또는 단순히 그것으로부터 분리합니다. 물론 당신도 다시 붙일 수 있습니다.
Brett Caswell

@jcmcbeth 실제로 IIS Express에서 작동합니다. IIS가 작동하지 않는 것을 볼 수 없었습니다 ... IIS Express 프로세스는 그 자체의 개별 프로세스입니다. VS 디버거가 프로세스를 시작하고 연결하고 있습니다. 그러나 해당 프로세스는 응용 프로그램이나 웹 서버를 실행하기 위해 연결된 디버거에 의존하지 않습니다. 방문자 / 사용자 에이전트 / 클라이언트가 proc에서 실행되어야합니다.
Brett Caswell

1
@jcmcbeth, 기능 지원 및 설정에 대해 이야기 할 때 Q & A 사이트에서 말하는 것은 이상한 일입니다. 이것은 가져 가거나 scenerio를 떠나지 않습니다. IIS Express에서는 작동 하지 않는 것 같습니다 . 그렇습니다.
Brett Caswell

1
ASP.NET 5 프로젝트 용 VS 2015 RC에는 "편집 사용 및 계속 사용"확인란이 없으므로 IIS Express를 이러한 방법과 함께 사용하려면이 방법을 사용하십시오.
Tomek

7
이것은 VS 2015 업데이트 2가 프로젝트 웹 탭에서 편집 및 계속을 제거하여 IIS 동작을 어떻게 변경했는지에 대한 답변입니다.
Robharrisaz

32

Visual Studio 2015 업데이트 2가 출시 된 이후에 수용된 솔루션이 더 이상 작동하지 않는 것 같습니다.

지금까지 찾은 가장 쉬운 해결책 은 디버그 메뉴 에서 " 디버깅없이 시작 "을 선택하여 프로젝트를 시작하는 것 입니다.


1
VS2015에 대해 이야기하는 것처럼 들립니다.
차드 카 리쉬

젠장, 나는이 문제에 부딪 쳤고 이것 에 대한 질문게시 했습니다. 바로 가기 대신 디버깅 및 분리없이 시작하도록 바로 가기를 리 바인드하는 것 외에는이 문제를 해결하기위한 알려진 해결 방법이 있습니까?
nikib3ro

1
그들은 다음 업데이트에서이 문제를 해결하고 있다고 말합니다. 그 동안 사용할 수있는 또 다른 트릭은 ctrl + F5를 눌러 디버깅하지 않고 사이트를 시작하는 것입니다. connect.microsoft.com/VisualStudio/feedback/details/2562576/…
mattmanser

4

이것은 아마도 다른 해결 방법으로 가장 잘 분류되지만 나에게 효과적입니다.

일반적으로 "브라우저에서보기"컨텍스트 메뉴 (또는 CTRL-Shift-W)를 사용하여 프로젝트를 처음 시작합니다.

그때부터 디버깅이 필요한 것은 대개 새로운 기존 iisexpress 프로세스에 연결합니다. 상황에 맞는 메뉴를 마우스로 클릭하면 시작이 아닌 것이지만 다음 키 입력으로 F5만큼 빠릅니다.

  • Shift-F6을 사용하여 현재 프로젝트를 빌드하거나 Ctrl-Shift-B를 사용하여 전체 솔루션을 빌드하십시오 (변경 한 경우에만 필요하지만 F5가 이미 수행했기 때문에 언급해야한다고 생각했습니다).
  • Ctrl-Alt-P는 프로세스에 첨부 대화 상자를 엽니 다

  • "iis"를 입력하면 iisexpress 프로세스로 이동합니다

  • Enter 키를 누르면 연결됩니다

실행중인 iisexpress가 둘 이상인 경우 마지막으로 시작한 것이 일반적으로 목록의 맨 위에 나타납니다. 또 다른 옵션은 Shift-Select를 선택하여 모든 항목에 연결하는 것입니다.

이것은 많은 이점 IMO가 있습니다. 우선, 프로세스를 종료하지 않습니다. 둘째, 디버깅을 중지해도 브라우저 창이 닫히지 않습니다. 개발자가 버그를 재현하기 위해 7 단계를 반복하면 디버거가 연결되면 기존 브라우저 창에서 F5를 눌러 다시 게시하기 만하면 문제가 발생합니다. 마지막으로, nunit에 연결할 때 이미이 작업을 수행해야하므로보다 일관된 경험을 얻을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.