prosource

IIS Express 웹 서버를 시작할 수 없습니다. URL을 등록하지 못했습니다. 액세스가 거부되었습니다.

probook 2023. 5. 23. 21:59
반응형

IIS Express 웹 서버를 시작할 수 없습니다. URL을 등록하지 못했습니다. 액세스가 거부되었습니다.

일부 웹 프로젝트는 문제를 일으키는 반면 다른 프로젝트는 정상적으로 작동합니다.저는 문제가 있는 것들 중 하나에 집중하기로 결정했습니다.Windows 7(윈도우 7)에서 Visual Studio 2013을 사용하고 있습니다.권한으로 것 , 창에 리자로실것는같다니습다창니같표다됩시이음과제.PROJECT NAME - Microsoft Visual Studio (Administrator).

프로젝트를 실행하려고 하면 다음과 같은 팝업이 나타납니다.

IIS Express 웹 서버를 시작할 수 없습니다.

사이트 "SITE NAME" 응용 프로그램 "/"에 대한 URL "http://localhost:62940/"을 등록하지 못했습니다.오류 설명:액세스가 거부되었습니다. (0x80070005).

이것이 완전히 드문 것처럼 보이지는 않지만, 저는 많은 제안들을 시도했지만 운이 없었습니다.

  1. 된 제됨%userprofile%\Documents\IISExpress\도망치려고 했습니다.

  2. netsh http add urlacl url=http://localhost:62940/ user=everyone실행하려고 (은.)user=Alla(스웨덴어 Windows 이후).

  3. netsh http delete urlacl url=http://localhost:62940/되어 재되고변에서 <binding protocol="http" bindingInformation="*:62940:localhost /><binding protocol="http" bindingInformation="*:62940:/>%userprofile%\Documents\IISExpress\config\applicationhost.config그리고 실행하려고 했습니다. (오류 메시지가 바뀌었습니다.)... URL "http://*:62940/" ....

  4. IIS 8.0 Express 다시 설치

  5. Visual Studio 2013 재설치

어찌할 바를 모르겠습니다만, 제가 뭘 잘못했나요?

프로젝트 포트(예: 55555)를 변경하면 시작됩니다.이 프로젝트는 여러 사람이 수행하기 때문에 바람직한 해결책이 아닙니다.혹시 항구가 다른 것에 의해 막힌 것은 아닐까요?그렇다면 무엇으로 쉽게 확인할 수 있는 방법이 있나요?

포트 62940은 무료인 것 같습니다. 중입니다.netstat수신 중인 응용 프로그램은 표시되지 않습니다.뭔가 잘못된 게 분명해요.

저는 몇 달 동안 손을 대지 않고 오늘 프로젝트를 시작하려고 했습니다.효과가 있었는데 왜 그런지 모르겠어요.

프로젝트 포트를 변경하여 오류를 해결했습니다.

다음 단계를 수행했습니다.

1 - 프로젝트를 마우스 오른쪽 버튼으로 클릭합니다.
합니다.2 - 속성으로 이동합니다.
3 - 서버 탭으로 이동합니다.
- 섹션에서 URL을 변경합니다.를 들어 30004 - 탭 서 또 8080 과 3000 은 을 프 로 URL 다

행운을 빕니다.

네, 동의합니다. 최고의 답변은 정말 해결책입니다.중간자를 위한 것은 다음과 같습니다.

솔루션 탐색기

  1. 프로젝트 마우스 오른쪽 버튼을 클릭하여 프로젝트 언로드를 선택합니다.
  2. 다시 마우스 오른쪽 버튼을 클릭하고 Edit ProjectName.csproj를 선택합니다.
  3. 이 세 줄을 제거합니다.
<DevelopmentServerPort>0</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:62940/</IISUrl>
  1. 프로젝트를 저장하고 다시 로드하면 바로 사용할 수 있습니다.

try(고급 관리자)

netsh http delete urlacl url=http://*:62940/

이 문제를 해결하는 이상적인 방법은 IIS Express 트레이 아이콘을 사용하여 문제를 일으키는 웹 사이트를 중지하는 것입니다.이렇게 하려면 작업 표시줄의 오른쪽 끝에 있는 위쪽을 가리키는 작은 화살표를 클릭하고 IIS Express 아이콘을 마우스 오른쪽 버튼으로 클릭합니다.IIS Express가 현재 실행 중인 웹 사이트를 보여주는 작은 창이 나타납니다.

IIS Express 팝업

사이트 보기 아래의 항목 중 하나를 클릭하면 해당 사이트를 중지할 수 있습니다.또는 창 하단에 있는 종료 항목을 클릭하여 모든 웹 사이트를 중지할 수 있습니다.

그러면 Visual Studio에서 디버그할 수 있습니다.디버깅을 다시 시작하면 IIS Express가 자동으로 웹 사이트를 다시 시작하고 포트를 할당할 수 있습니다.

만약 그것이 실패한다면, 당신은 그것을 더러운 방법으로 해야 합니다. 작업 관리자를 합니다.Microsoft.VisualStudio.Web.Host.exe*32프로세스를 수행하면 프로젝트를 잘 실행할 수 있습니다.이렇게 하면 IIS Express가 완전히 종료되므로 모든 웹 사이트가 중지되므로 다른 웹 사이트를 디버그하려면 VS에서 각 사이트를 다시 시작해야 합니다.팝업 아이콘 방법이 더 깨끗하고 안전하기 때문에 먼저 사용해 보십시오.

이것이 당신의 문제에 대한 답인지는 모르겠지만, 저에게는 효과가 있습니다.

업데이트 Jason Coder(아래 주석 참조) 덕분에 Win10에서 프로세스는Microsoft.VsHub.Server.HttpHost.exe

Visual Studio 2015를 사용하는 경우 솔루션이 이전 답변과 약간 다를 수 있습니다.VS2015는 솔루션 파일과 동일한 폴더 아래에 숨겨진 폴더 .vs를 생성합니다.이 아래에는 applicationhost.config가 포함된 구성 폴더가 있습니다.이 파일(또는 전체 .vs 폴더)을 삭제한 후 VS2015를 시작하여 다시 생성하면 이 오류를 해결할 수 있습니다.

최근에도 이 오류가 발생했습니다.위의 모든 수정을 시도했지만 아무 것도 작동하지 않았습니다.

비활성화하려면 다음을 입력합니다.services.msc명령 프롬프트에서 마우스 오른쪽 단추를 클릭하고 인터넷 연결 공유를 사용하지 않도록 설정합니다.시작할 때 사용하지 않도록 속성도 편집했습니다.저는 지금 그렇게 보입니다. 서비스가 스크린샷을 캡처합니다.

Windows 10에서 Visual Studio 2019에서 애플리케이션을 실행할 때 동일한 문제가 발생했습니다.얼마 동안 여러 제안 솔루션을 검색하고 시도했지만 성공하지 못했습니다. "Access Denied" 오류는 애플리케이션에서 사용하는 포트 번호(50403)가 "excluded port range"(제외 포트 범위)에 포함되어 있기 때문입니다.

다음 명령을 사용하여 제외된 포트 범위를 볼 수 있습니다.

netsh interface ipv4 show excludedportrange protocol=tcp

좀 더 검색해 본 결과 이러한 제외 범위를 만드는 가장 가능성이 높은 두 가지 범인은 Docker와 Hyper-V입니다.도커가 내 컴퓨터에 설치되지 않았지만 Hyper-V가 설치되었습니다.

내 솔루션

  1. Hyper-V 사용 안 함: 제어판 -> 프로그램 및 기능 -> Windows 기능을 켜거나 끕니다.Hyper-V 선택 취소
  2. 컴퓨터를 다시 시작합니다.
  3. 사용 중인 포트를 포트 제외 범위에 추가합니다.netsh int ipv4 add excludedportrange protocol=tcp startport=50403 numberofports=1 store=persistent
  4. Hyper-V 다시 사용
  5. 컴퓨터 다시 시작

Hyper-V를 다시 사용하도록 설정한 후 이 문제가 다시 발생하지 않도록 사용 중인 포트를 제외 목록에 추가했습니다.제외된 포트 범위를 확인한 4단계와 5단계 후 Hyper-V가 포트 다음으로 시작하는 포트 범위를 예약한 것을 확인할 수 있습니다.

제외된 포트 범위

내 애플리케이션이 이제 완벽하게 작동했습니다!

이것이 내가 찾은 유일한 해결책입니다.

net stop winnat

net start winnat

맷 덕분에

원격 위치에서 내 사이트에 액세스하려고 할 때 이 문제가 발생했습니다.

처음에 애플리케이션 host.config(VS2015)에는 다음과 같은 표준이 포함되어 있었습니다.

<binding protocol="http" bindingInformation="*:64376:localhost" />

네트워크 내의 원격 위치에서 내 사이트에 액세스하기 위해 다음을 추가했습니다(1단계).

<binding protocol="http" bindingInformation="*:64376:192.168.10.132" />

그런 다음 관리자 권한으로 CMD에 입력했습니다(2단계).

netsh http add urlacl url=http://*:64376/ user=Everyone

3단계로 방화벽에 규칙을 추가했습니다.

netsh advfirewall firewall add rule name=”IISExpressWeb” dir=in protocol=tcp localport=64376 profile=private,domain remoteip=localsubnet action=allow

그런 다음 솔루션을 다시 실행하려고 할 때 이 오류가 발생했습니다.

솔루션:모든 것을 제대로 한 것 같았지만, 달리기 전까지는 작동하지 않았습니다.netsh기존 localhost 규칙의 경우도 마찬가지입니다.

netsh http add urlacl url=http://localhost:64376/ user=Everyone

이제 다시 작동합니다.

저도 방금 비슷한 문제가 있었습니다.실제 결함을 어떻게 설명해야 할지 잘 모르겠지만 예약에 있는 호스트 이름이 잘못된 것 같습니다.높은 명령 프롬프트에서 이 작업을(를) 사용합니다.

netsh http delete urlacl url=http://localhost:62940/

그렇다면...

netsh http add urlacl url=http://*:62940/ user=everyone

사이트를 다시 시작합니다.그건 작동할 거야.

동일한 오류 메시지를 받았는데 IIS Express에서 생성된 것 같습니다. 기사는 해결하는 데 도움이 되었습니다.

TL;DR

관리 명령 프롬프트에서 다음 명령을 실행합니다.

> netsh http add iplisten ipaddress=::

몇 가지 제안된 솔루션을 시도했지만 성공하지 못한 후 PC를 재부팅했습니다.그 이후로 더 이상 문제가 발생하지 않았습니다.

IIS express 구성과 관련된 모든 항목으로 프로젝트 파일(csproj)과 애플리케이션 host.config(iis express)를 정리했습니다.그 후, 효과가 있었습니다.

Visual Studio 2015를 설치한 후 이 문제가 발생하면 시스템 이벤트 로그에 다음과 같은 오류 메시지가 표시됩니다.Unable to bind to the underlying transport for [::]:{your_port}. . The IP Listen-Only list may contain a reference ...레지스트리 항목이 없을 수 있습니다.

프롬프트에서 합니다.netsh http add iplisten ipaddress=::고치기 위해.

여기에 자세히 설명된 솔루션을 찾았습니다.

여기에 나열된 모든 단계가 실패한 후 VS2015를 관리자로 실행하여 작동하게 되었습니다.

Windows 10 및 VS 2013에서 이러한 현상이 발생했습니다.보아하니 최대 포트 번호 IIS Express 핸들이 있습니다.62546 이상의 포트는 사용할 수 없습니다.

Visual Studio를 다시 시작하면 오류를 해결할 수 있습니다.마이크로소프트를 다시 시작하는 것과 동일한 효과가 있습니다.Visual Studio.Web.Host.exe*32 프로세스입니다.

IIS Express가 http://localhost:50418/대해 불만을 제기한 것과 동일한 문제가 발생했지만 위의 솔루션 중 어떤 것도 나에게 효과가 없었습니다.

projektFolder --> .vs --> config --> applicationhost.xml로 이동했습니다.

에 태그에서<sites>제 웹 앱에 두 개의 바인딩이 등록되어 있는 것을 발견했습니다.

<site name="myApp.Web" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\git\myApp\myApp.Web" />
    </application>
    <bindings>
        <binding protocol="https" bindingInformation="*:44332:localhost" />
        <binding protocol="http" bindingInformation="*:50418:localhost" />
    </bindings>
</site>

*:50418:localhost를 가리키는 바인딩을 제거하여 문제를 해결했습니다.

VS2017 및 IISpress v10 사용.

문제는 프로젝트 설정에서 SSL을 사용하도록 설정했다는 것입니다.프로젝트를 로컬로 실행하는 데 SSL이 필요하지 않기 때문에 이 기능을 사용하지 않도록 설정했습니다.

Visual Studio 2015에서:

  • 솔루션 탐색기에서 프로젝트를 선택합니다.
  • 속성 창에서 SSL 사용을 거짓으로 설정합니다.
  • 저는 프로젝트를 진행할 수 있었습니다.

제 상황에서 사용 중인 포트 443에 대한 오류가 발생했습니다. 이 포트가 프로젝트의 SSL URL에 설정된 포트였기 때문입니다.

중입니다.netstat -abn저는 "듀엣 디스플레이" 소프트웨어가 ~51000 범위의 수천 개 포트를 예약하고 있다는 것을 알게 되었습니다.

그것을 닫는 것이 제 문제를 해결했습니다.

때때로 이 오류는 동일한 컴퓨터에서 실행 중인 또 다른 Visual Studio 버전입니다.

프로젝트 "속성" = > "웹"으로 이동하고 "서버" 섹션에서 포트를 사용되지 않는 다른 포트로 변경하여 저장합니다.가상 디렉터리를 만들라는 메시지가 표시되고 "예"를 클릭합니다.이제 프로젝트를 실행하면 작동합니다.

제 경우 처음에는 작동하다가 잠시 후에 작동이 중지되었고 IIS Express에서 포트가 사용 중이라고 보고했습니다.
netstat -abChrome이 포트를 사용하고 있음을 보여줍니다.크롬을 그만둔 후 다시 작동하기 시작했습니다.
하지만 크롬이 왜 그 항구를 점유했는지는 잘 모르겠습니다.

빌드 후 브라우저에서 프로젝트를 보는 동안 Windows 7 및 VS 2013에서 이 문제가 발생했습니다.브라우저 "Chrome"을 닫기만 하면 일부 유틸리티(Kaspersky)를 사용하여 네트워크 활동에서 포트가 사용되고 있지 않은지 확인한 후 다시 시도하여 문제 없이 작동했습니다.

Visual Studio 2015에서:

  • 프로젝트에서 시작 페이지(예: mypage.aspx)를 찾아 마우스 오른쪽 단추로 클릭합니다.
  • 시작 페이지로 설정을 클릭합니다.
  • 프로젝트를 마우스 오른쪽 버튼으로 클릭합니다.
  • 속성을 클릭합니다.
  • 왼쪽에 있는 웹 탭을 클릭합니다.
  • 프로젝트 URL에 http://localhost:1234/와 같은 다른 포트를 입력합니다.
  • 시작 작업에서 특정 페이지: mypage.aspx를 선택하거나 특정 URL: http://localhost:1234/mypage.aspx?myparam=xxx를 선택합니다.

저는 정보를 위해 씁니다.

프로젝트에서 파일을 삭제합니다.

치료 후 > 빌드 > 프로젝트 시작

iexplor 및 iexplor*32의 모든 인스턴스를 제거하여 이 문제를 해결했습니다.응용 프로그램 창이 닫혔는데도 Internet Explorer가 포트를 열어둔 채 메모리에 남아 있었던 것 같습니다.

저는 JetBrain Rider에서 이 문제를 겪었습니다. 특히 포트 80과 90 비트는 비주얼 스튜디오뿐만 아니라 다른 포트와도 작동합니다.

관리자로 실행한 후 문제가 해결되었습니다.

Visual Studio 2019에서 디버그 프로필을 제거하고 새 프로필을 만들기만 하면 됩니다.

  1. 디버그 탭의 프로젝트 속성으로 이동
  2. 먼저 포트 변경을 시도합니다. 웹 서버 설정
  3. 포트를 변경할 수 없는 경우 디버그 프로파일을 제거하고 새 OneWarning을 생성합니다. 이전 설정을 알고 있어야 합니다.

제게 도움이 된 것은 현재 사용 중인 어댑터를 제외한 다른 모든 네트워크 어댑터를 비활성화하는 것입니다.는 다음과 같습니다.Unable to bind to the underlying transport for [::]:50064. The IP Listen-Only list may contain a reference to an interface which may not exist on this machine. The data field contains the error number.

VMware Workstation, Docker(및 Hyper V) 일부 VPN 클라이언트를 보유하고 있기 때문에 네트워크 인터페이스가 많습니다.

언급URL : https://stackoverflow.com/questions/23502327/unable-to-launch-the-iis-express-web-server-failed-to-register-url-access-is-d

반응형