2014-09-13 3 views
3

편집 : 관리자로 Visual Studio를 실행하면 아래 문제가 해결되지만 누군가 Azure 에뮬레이터에서 웹 사이트를 실행하려면 관리자 권한으로 실행해야하는 이유를 설명 할 수 있습니까?Azure에서 웹 사이트가 실행되지 않음 로컬로

우리 사이트를 Windows Azure로 마이그레이션하는 과정에서 클라우드 서비스를 만들고 웹 역할을 추가했으며 디버그에서 클라우드 서비스 프로젝트를 시작하려고 시도하면 시작되지 않습니다. 출력에는 다음과 같이 표시됩니다.

그리고 왼쪽 하단에는 "조작 취소됨"이 표시됩니다. 나는 빈 asp.net mvc 웹 사이트를 만들면이 일이 벌어지는 이유를 찾지 못하는 것 같습니다. 그래서이 응용 프로그램에서이 폭탄을 일으키는 무언가가 있어야합니다. 아무도 아이디어가 없습니다. 이 문제를 추적하려면 어떻게해야합니까?

I 에뮬레이터에만 출력 보는 두 번째를 얻을 수 있지만 말한다 :

[fabric] Role Instance: deployment24(29).xxx.Web.0 
[fabric] Role state Busy 
[fabric] Role state Unhealthy 
[fabric] Role state Stopped 

내가에서 로그에 보면 waHostBootstrapper.log

[00005740:00008088, 2014/09/13, 15:57:43.320, ERROR] <- WapXmlReadRoleModel=0x1 
[00005740:00008088, 2014/09/13, 15:57:43.324, ERROR] <- GetDebugger=0x1 
[00005740:00008088, 2014/09/13, 15:57:43.324, ERROR] <- GetStartupTaskDebugger=0x1 
[00005740:00008088, 2014/09/13, 15:57:43.324, ERROR] <- WapGetEnvironmentVariable=0x800700cb 
[00005740:00008088, 2014/09/13, 15:57:43.324, ERROR] <- WapGetEnvironmentVariable=0x800700cb 
[00005740:00008088, 2014/09/13, 15:57:43.324, INFO ] Executing Startup Task type=2 rolemodule=Diagnostics cmd="E:\xxx\Diagnostics\DiagnosticsAgent.exe" 
[00005740:00008088, 2014/09/13, 15:57:43.325, INFO ] Executing "E:\xxx\Diagnostics\DiagnosticsAgent.exe" . 
[00005740:00008088, 2014/09/13, 15:57:43.334, ERROR] <- WapGetEnvironmentVariable=0x800700cb 
[00005740:00008088, 2014/09/13, 15:57:43.335, ERROR] <- WapGetEnvironmentVariable=0x800700cb 
[00005740:00008088, 2014/09/13, 15:57:43.335, INFO ] Executing Startup Task type=0 rolemodule=Diagnostics cmd="E:\xxx\Diagnostics\DiagnosticsAgent.exe" /blockStartup 
[00005740:00008088, 2014/09/13, 15:57:43.335, INFO ] Executing "E:\xxx\DiagnosticsAgent.exe" /blockStartup. 
[00005740:00002464, 2014/09/13, 15:57:43.480, INFO ] Registering client with PID 13152. 
[00005740:00002464, 2014/09/13, 15:57:43.480, INFO ] Client DiagnosticsAgent.exe (13152) registered. 
[00005740:00002464, 2014/09/13, 15:57:43.493, INFO ] Registering client with PID 11656. 
[00005740:00002464, 2014/09/13, 15:57:43.493, INFO ] Client DiagnosticsAgent.exe (11656) registered. 
[00005740:00008088, 2014/09/13, 15:57:43.564, INFO ] Program "E:\xxx\Diagnostics\DiagnosticsAgent.exe" /blockStartup exited with 0. Working Directory = E:\xxx\plugins\Diagnostics 
[00005740:00008088, 2014/09/13, 15:57:43.564, INFO ] Executing "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Windows Azure Tools\v2.4\Debugger\WindowsAzureDebugger.exe" base\x64\WaIISHost.exe . 
[00005740:00008088, 2014/09/13, 15:57:43.565, INFO ] Role host process PID: 5456. 
[00005740:00002464, 2014/09/13, 15:57:43.742, INFO ] Registering client with PID 16360. 
[00005740:00002464, 2014/09/13, 15:57:43.742, INFO ] Client WaIISHost.exe (16360) registered. 
[00005740:00002464, 2014/09/13, 15:57:43.742, INFO ] Client process WaIISHost.exe is the role host. 
[00005740:00002464, 2014/09/13, 15:57:43.742, INFO ] Role host process registered. 
[00005740:00008572, 2014/09/13, 15:57:43.820, INFO ] Getting status from client DiagnosticsAgent.exe (13152). 
[00005740:00008572, 2014/09/13, 15:57:43.820, ERROR] Failed to connect to client DiagnosticsAgent.exe (13152). 
[00005740:00008572, 2014/09/13, 15:57:43.820, ERROR] <- CRuntimeClient::OnRoleStatusCallback(0x0000000E8AE90C90) =0x800706ba 
[00005740:00008572, 2014/09/13, 15:57:43.820, INFO ] Removing disconnected client: DiagnosticsAgent.exe (13152). 
[00005740:00008572, 2014/09/13, 15:57:43.820, INFO ] Getting status from client DiagnosticsAgent.exe (11656). 
[00005740:00008572, 2014/09/13, 15:57:43.826, INFO ] Client reported status 0. 
[00005740:00008572, 2014/09/13, 15:57:43.826, INFO ] Getting status from client WaIISHost.exe (16360). 
[00005740:00008572, 2014/09/13, 15:57:43.826, INFO ] Client reported status 1. 
[00005740:00008572, 2014/09/13, 15:57:44.327, INFO ] Getting status from client DiagnosticsAgent.exe (11656). 
[00005740:00008572, 2014/09/13, 15:57:44.331, INFO ] Client reported status 0. 
[00005740:00008572, 2014/09/13, 15:57:44.331, INFO ] Getting status from client WaIISHost.exe (16360). 
[00005740:00008572, 2014/09/13, 15:57:44.331, INFO ] Client reported status 1. 
[00005740:00008572, 2014/09/13, 15:57:44.833, INFO ] Getting status from client DiagnosticsAgent.exe (11656). 
[00005740:00008572, 2014/09/13, 15:57:44.842, INFO ] Client reported status 0. 
[00005740:00008572, 2014/09/13, 15:57:44.842, INFO ] Getting status from client WaIISHost.exe (16360). 
[00005740:00008572, 2014/09/13, 15:57:44.842, ERROR] Failed to connect to client WaIISHost.exe (16360). 
[00005740:00008572, 2014/09/13, 15:57:44.842, ERROR] <- CRuntimeClient::OnRoleStatusCallback(0x0000000E8AE90CF0) =0x800706ba 
[00005740:00008572, 2014/09/13, 15:57:44.842, INFO ] Client process WaIISHost.exe is the role host. 
[00005740:00008572, 2014/09/13, 15:57:44.842, WARN ] Failed to contact the role host process. Treat role as unhealthy. 
[00005740:00017556, 2014/09/13, 15:57:45.295, INFO ] Sending shutdown notification to client DiagnosticsAgent.exe (11656). 
[00005740:00017556, 2014/09/13, 15:57:45.301, INFO ] Sending shutdown notification to client WaIISHost.exe (16360). 
[00005740:00017556, 2014/09/13, 15:57:45.302, ERROR] Failed to connect to client WaIISHost.exe (16360). 
[00005740:00017556, 2014/09/13, 15:57:45.302, ERROR] <- CRuntimeClient::OnRoleShutdownCallback(0x0000000E8AE90CF0) =0x800706ba 

에 다음과 같은 항목을 발견 \의 AppData \ 로컬 \ dftmp \ Resources {guid} \ directory \ DiagnosticStore 다음과 같은 WaIISHost.log 파일에 오류가 있습니다.

WaIISHost 정보 : 0 : [00006516 : 00000001, 2014/09/14 06 : 43 : 23.994 , 오류] 예외 : System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail] : 인증되지 않은 작업을 수행하려고 시도했습니다. (오류 세부 정보는 ExceptionDetail과 같으며 값이 인 IncludeExceptionDetailInFaults = true로 인해 생성 될 수 있습니다. System.UnauthorizedAccessException : System.Security.AccessControl.Win32.SetSecurityInfo (ResourceType 유형, 문자열 이름, 설명)에서 일 때 오류가 발생했습니다.

답변

2

에뮬레이터는 여러 가지 작업을 수행하기 위해 관리자 권한이 필요하며 IIS를 제어해야하므로 1024 이하의 포트를 열어야합니다 (예 : SafeHandle 핸들, SecurityInfos securityInformation, SecurityIdentifier 소유자, SecurityIdentifier 그룹, GenericAcl dacl). , 작업자 프로세스에 대한 제어 권한이 있어야합니다 .Visual Studio가 생성 및 제어하므로 Visual Studio에도 이러한 권한이 필요합니다.

이 문제를 완화하는 "Express Emulator"옵션이 있지만 역할 당 하나의 인스턴스로 제한되며 IIS가 임의의 상위 포트를 사용하도록 허용해야합니다. Express 에뮬레이터 모드에서 실행하는 방법은 http://msdn.microsoft.com/en-us/library/azure/dn339018.aspx에서 확인할 수 있습니다.

이 비슷한 질문도 추가 정보가 있습니다 Windows Azure emulator without admin privileges

+0

링크 추가 정보로 도움이 될 수 있지만,이 [링크 전용 답변이 절대 권장된다 (http://meta.stackoverflow.com/a/8259/228805). 질문과 관련된 링크 된 정보의 요약을 항상 포함하고 문제 해결 방법을 설명하십시오. 그러나이 질문은 어쨌든 주제와는 다른 것으로 보이며 [sf]에서 질문을 받아야합니다. –

+0

답변의 짧은 버전 (IIS를 제어해야 함)을 주었지만 자세한 내용을 위해 편집 한 요점을 이해할 수 있습니다. 이것이 실제 서버를 실행하지 않고 에뮬레이터에 대한 개발 및 테스트에 관한 질문이기 때문에 이것이 서버 오류에 속한다는 것에 동의 할지는 모르겠습니다. –

관련 문제