localhost가 Visual Studio에서 오류 연결을 거부했습니다.


81

다른 시스템에서 내 솔루션 파일을 복사하여 내 컴퓨터에서 실행하려고했습니다.이를 위해 프로젝트 폴더로 이동하여 이전 솔루션 파일을 삭제하고 새 파일을 복사했습니다.

이제 오류가 발생하기 시작했습니다. 연결이 거부되었습니다. 그래서 여기에서 한 가지 해결책이 있습니다. IISExpress를 실행하는 localhost에 연결하려고 할 때 ERR_CONNECTION_REFUSED를 해결하는 방법-오류 502 (Visual Studio에서 디버그 할 수 없음)?

그것에 따라 포트 번호를 1049에서 1052로 변경했습니다.로드되고 페이지 중 하나가로드됩니다. 그러나 원하는 로그인 자격 증명을 입력하면 다음과 같이 이전 포트로 다시 리디렉션됩니다.

http://localhost:1049/Home/SearchFlight

오류는 다음과 같습니다.

 This site can’t be reached

 localhost refused to connect.
 Search Google for localhost 1049 Home Search Flight
 ERR_CONNECTION_REFUSED

이제 여기서 무엇을해야할지 모르겠습니다. 포트 번호를 1052로 변경했지만 여전히 1049를 가리 킵니다. 이제 어떻게해야합니까?

답변:


109

비슷한 문제가있었습니다. 이것을 시도하면 작동합니다

  1. 프로젝트 폴더로 이동하여 폴더를 엽니 다 .vs(이 폴더는 때때로 숨겨 질 수 있으므로 숨겨진 항목 확인란을 선택하십시오)

  2. 에서 .vs폴더 열기 config폴더를

  3. applicationhost.config저기 저 파일 보이 시죠? 그거 삭제 해 (프로젝트를 다시 컴파일하면 자동으로 재생성 될 것이라는 점을 염려하지 마십시오.)


7
이것은 나를 위해 일했습니다. 관리자 모드에서 VS를 시작해야 할 수도 있습니다.
— WillC

4
"IIS 웹 서버를 시작할 수 없습니다"라는 오류가 발생합니다.
— Baimyrza Shamyr

8
시도했지만 "이 사이트에 연결할 수 없습니다"라는 메시지가 계속 나타납니다. (나는 또한, 관리자 모드에서 열려고 도움이되지 않았다)
— 나단 Tregillus

1
저를 위해 일했습니다
— Gags

6
VS 2017을 다시 시작할 때까지 작동하지 않았습니다. 관리자 모드가 필요하지 않습니다.
— MusicAndCode

49

일반적으로 로컬 컴퓨터 This site can't be reached localhost refused to connect에서 로컬 IIS Express에 대해 자체 서명 된 인증서 구성이 손상 되었기 때문에 오류가 발생합니다 . 때때로이 launchSettings.json컴퓨터에서 URL을 변경 하거나 자체 서명 된 인증서를 전혀 구성하지 않은 경우에 발생 합니다.

로컬 컴퓨터에서 자체 서명 된 인증서 를 수정 하려면 다음을 수행해야합니다. 

  1. .vs 폴더 삭제 (Visual Studio 2017을 닫아야 함)
  2. 다음 명령을 실행하십시오 cmd As Administrator.

    cd "C:\Program Files (x86)\IIS Express"

    IisExpressAdminCmd.exe setupsslUrl -url:https://localhost:12345/ -UseSelfSigned

  3. VS2017을 실행 As Administrator하고 문제가 해결 되었는지 확인하십시오.

참고 : https://localhost:12345/귀하 launchSettings.json의HTTPS


3
이것은 실제로 도움이되었습니다. 나는 Fiddler 실행 및 인증서 누락 문제를 결합했습니다.
— Diomos 2010 년

2
이것이 저의 승자였습니다. localhost의 다른 포트에있는 다른 앱에 대한 openssl 인증서를 추가했으며 iis express에 사용하던 자체 서명 된 인증서를 호스에 넣었습니다. 특정 로컬 호스트 포트에서 자체 서명 된 인증서를 복구하면 문제가 해결되었습니다.
— 박사 C. 우스

1
수정되었습니다. 감사합니다! 나는 많은 사람들이 .vs 폴더 삭제라고 말하는 것을 보았지만 이것이 내가 ssl 인증서에 대해 본 첫 번째 대답입니다.
— tagustini

1
내 경우에는 내가에, 다른 포트에서 실행했다 44343. IisExpressAdminCmd.exe setupsslUrl -url : 로컬 호스트 : 44343은 -UseSelfSigned
— 비탈리 Markitanov을

내 응용 프로그램은 최근까지 잘 작동했고 브라우저에서 "이 사이트에
— 연결할

29

포트 번호를 변경하여 문제가 해결되었습니다.

여기에 이미지 설명 입력


그것은 순간적으로 해결됩니다. 프로젝트를 실행할 때마다 포트를 변경하는 것이 지루합니다.
— jstuardo

VS 2019 Preview 사용 2. 동일한 오류가 발생하여 위의 프로젝트 URL로 변경하여 수정했습니다. :-) (선한 이유를 알고)
— netchicken

실제로 전체 .vs 폴더를 삭제하고 포트 번호를 변경해야했지만 적어도 결국 작동했습니다
— William

11

프로젝트 폴더에서 (obj) Object 폴더를 삭제하고 응용 프로그램을 실행하면 정상적으로 작동합니다. 단계 :

  1. 프로젝트 폴더를 마우스 오른쪽 버튼으로 클릭 한 다음 "파일 탐색기에서 폴더 열기"를 선택합니다.
  2. 그런 다음 Obj 폴더를 찾아 삭제하십시오.
  3. 응용 프로그램을 실행하십시오.

8

나는 같은 문제가 있었다. .vs폴더 삭제 (모든 내용 포함, 폴더가 숨겨 질 수 있음)가 저에게 효과적이었습니다.


전체 프로젝트를 다른 PC에 복사하면 프로젝트가 자체 .vs 구성도 처리하므로 숨겨진 폴더를 삭제하고 새 PC에서 프로젝트를 다시 열면 작동합니다.
— Osify

8

불행히도 이러한 답변 중 어느 것도 나를 위해 일하지 않았습니다. 이 답변은 마침내 Chrome에만 적용되었습니다. 불행히도 매번해야합니다.

  1. 브라우저에서 열기 : chrome : // net-internals / # hsts
  2. 도메인 보안 정책 삭제로 이동
  3. "localhost"를 입력합니다.
  4. 브라우저를 다시 시작하세요

로컬 호스트를 https로 리디렉션하는 Google 크롬


와우, 지난 1 시간 반 동안 VSCode에서 디버그를 시도하면서이 문제를 해결하려고 노력해 왔는데 마침내 해결되었습니다.
— Nard Dog

6

관리자로 실행되는 cmd 창에 바인딩 된 IP 주소를 나열하여 비슷한 문제를 해결했습니다.

netsh http show iplisten

그런 다음 하나씩 모두 날려 버립니다.

netsh http delete iplisten ipaddress=127.0.0.200
netsh http delete iplisten ipaddress=127.0.0.2
...

한 시점에서 URL 예약을 추가했는데 http://*:44300/이것이 localhost가 나를 위해 연결하지 못하게하는 원인입니다. 나는 당신과 비슷한 명령을 실행 netsh http delete urlacl http://*:44300/했고 localhost는 이제 예상대로 연결하고 디버그합니다!
— Quiver

5

Visual Studio를 "관리자 권한으로 실행"으로 실행했는데 이로 인해 문제가 해결되었습니다.


나는 이것이 90 %의 경우라고 장담 할 것이다. VS 업데이트를 설치하고 설치가 끝날 때 "시작"을 클릭하면 관리자 권한으로 실행되지 않습니다. 매번 나를 가져옵니다.
— moomoo

2

이 문제가 발생하여 Visual Studio의 열려있는 모든 인스턴스를 닫아 해결했습니다.


1
또한 프로젝트가 다른 Visual Studio의 두 인스턴스가 동일한 포트에서 실행될 수도 있습니다. 포트를 다르게 만드는 것이 저에게 효과적이었습니다.
— Ben

2

제어판> 프로그램 및 기능> IISExpress> 복구로 이동합니다.


.vs 폴더를 삭제해도 도움이되지 않았습니다. 그러나 수리가 도움이되었습니다. 고마워요
— Dmitresky

2

내가 엉망 이었기 때문에 발견 되었다면 netsh http addIIS Express를 원격으로 표시 명령을 입니다.

증상은 다음과 같습니다.

  • 사이트가 브라우저에서 연결되지 않습니다.
  • 사이트가 시작되지 않습니다 (작업 표시 줄에서 IIS Express를 마우스 오른쪽 단추로 클릭하면 누락 됨).
  • Visual Studio를 관리자로 실행하면 IIS Express에서 시작되고 브라우저에 표시됩니다.

해결책은 모든 바인딩 된 사이트를 나열하는 것입니다.

netsh http show urlacl

그런 다음 최근에 추가 한 항목을 삭제하십시오.

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


또한 사이트 localhost의 숨겨진 솔루션 폴더 파일에서 제거 했습니다 .vs\config\application.config.

<bindings>
    <binding protocol="http" bindingInformation="*:54321:" />
</bindings>

그래서 그것을 다시 넣어야했습니다.

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

환상적인 대답입니다. 제 경우에는 그 목적을 위해 ngrok 를 사용하여 사이트에 원격으로 액세스하려고했습니다 . 그것은 나를 위해 작동하지 않았고 그 특정 포트에 대해 액세스 할 수 없도록 남겨 두었습니다 netsh http add. 프로세스 중에 결국 . 대단히 감사합니다!
— oneberenjena

1

이것은 .net core 2.0을 사용하는 VS2017 v 15.6.7에서 나에게 발생했습니다.

프로젝트가 처음 시작되었을 때 localhost에 대한 SSL 인증서를 생성하고 정상적으로 시작되었습니다. SSL을 비활성화했을 때이 문제가 계속 발생했습니다.

SSL을 비활성화하면 포트 번호가 변경되고 모든 포트 번호가 새 포트로 변경되는 것은 아닙니다. 디버그의 포트 번호가 모두 동일한 번호인지 확인하십시오. 여기에 이미지 설명 입력


1

포트 번호를 변경하고 스크립트 디버깅 (활성화 된 경우)을 제거하여 localhost.


1

나는 모든 것을 시도했지만 아무것도 효과가 없었습니다. Express 대신 로컬 IIS에서 디버그 할 수있는 경우 아래 이미지와 같이 구성을 변경하십시오. "가상 디렉터리 만들기"를 클릭하는 것을 잊지 마십시오.

여기에 이미지 설명 입력



1

나는 최근 에이 정확한 문제에 부딪 쳤고 대부분의 제안을 시도했지만 내 문제가 다른 것으로 밝혀졌습니다.

우리의 응용 프로그램에는 HTTP를 사용하는 경우 HTTPS로 리디렉션하는 섹션이 있습니다 (예, 더 나은 방법이 있다는 것을 알고 있지만 이것이 레거시입니다). 또한 개발자 모드에있을 때 로컬 호스트를 특수 처리하여 HTTP로 다시 리디렉션했지만 이유는 모르겠습니다.

HTTPS에서 테스트해야하는 새로운 요구 사항이 있습니다.

일반 웹 페이지에서 http : //를 https : //로 변경하고 Redirect를 호출하면 정상적으로 작동하지만 IISExpress에서는 사용자 지정 포트를 사용하고 있습니다. 예를 들어 https : // localhost : 44300 에있는 경우 http : // localhost : 44300으로 전환 할 수 없습니다 . 있는 경우 포트가 http가 아닌 https 만 제공 b / c로 .

따라서이 문제가 발생하고 구성 파일을 지 웠지만 도움이되지 않으면 코드에서 리디렉션을 확인하십시오. https로 업데이트하지 않은 구성 파일의 URL 또는 하드 코딩되거나 부분적으로 하드 코딩 된 URL을 사용하는 것이있을 수 있습니다.

업데이트 : 또한 모든 .suo 및 .user 파일을 지우는 것이 좋으며 다른 사람은 obj / 폴더를 지우는 것이 좋습니다. VS를 닫은 다음 다시 시작하는 것이 좋습니다. https : //를 설정하고 포트를 변경하려고 할 때 캐시되는 포트 값에 많은 문제가있었습니다. 이 제안을 시도하여 SSL 포트가 올바른 범위 내에 있는지 확인하는 것이 좋습니다. 그래도 여전히 요구 사항인지는 모르겠지만 https://stackoverflow.com/a/24957146


1

여기에도 같은 문제가 있지만 내 생각에는 최신 버전의 Visual Studio를 설치하고 2015 및 2019 버전에서 솔루션을 실행했기 때문이라고 생각합니다. 전체 .vs 폴더를 삭제하고 Visual Studio를 다시 시작했는데 작동했습니다.

문제는 .vs 폴더에 Visual Studio의 각 버전에 대해 여러 구성이 있으며 문제가있는 것 같습니다.



0

이 작업을 수행하려면 가상 디렉터리를 다시 만들어야했습니다. Windows를 다시 설치 한 다음 Git에서 프로젝트를 다시 가져 왔습니다. 이렇게하려면 솔루션 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성을 선택한 다음 웹 탭으로 이동하여 프로젝트 URL 옆에있는 가상 디렉터리 만들기를 클릭합니다.

나는 이것이 다른 사람에게도 도움이되기를 바랍니다!

싹


0

프로젝트 속성> 웹> 가상 디렉터리 만들기가 나를 위해 일했습니다.


0

프로젝트 >> 속성 >> 웹 탭 선택 >> 서버에서 "비주얼 개발 서버 사용"을 선택 하여 간접적으로 "로컬 IIS 서버"를 선택 취소합니다.

이 문제가 해결되기를 바랍니다.


0

관리자 권한으로 cmd를 열고 다음 명령을 실행하십시오.

netsh http delete iplisten ipaddress=xxx.xxx.x.xxx

ipaddress는 개인 IP입니다.
이것은 나를 위해 일했습니다.


0

Donny V처럼 이것은 .net core 2.0을 사용하는 VS2017에서 나에게 일어났습니다.

프로젝트가 처음 시작되었을 때 VS는 로컬 호스트에 대한 SSL 인증서를 생성하라는 대화 상자를 표시했지만 SSL을 사용하고 싶지 않았기 때문에 실행을 중지하고 프로젝트 속성으로 이동하여 SSL (지울 수있는 확인란)을 비활성화했습니다. . 그 후에도 계속 문제가 설명되었습니다.

많은 일을 시도한 후 실제로 문제를 해결 한 것은 [ProjectName] / Properties 아래에있는 launchSettings.json 파일을 편집하는 것이 었습니다. 솔루션 탐색기에서 액세스 할 수 있습니다.

편집이 완료되었을 때 내용은 다음과 같습니다 (여기서 12345는 포트 번호이고 MyNETCoreApp은 프로젝트 이름).

{
    "iisSettings": {
        "windowsAuthentication": false,
        "anonymousAuthentication": true,
        "iisExpress": {
            "applicationUrl": "http://localhost:12345/"
        }
    },
    "profiles": {
        "IIS Express": {
            "commandName": "IISExpress",
            "launchBrowser": true,
            "launchUrl": "http://localhost:12345/",
            "environmentVariables": {
                "ASPNETCORE_ENVIRONMENT": "Development"
            }
        },
        "MyNETCoreApp": {
            "commandName": "Project",
            "launchBrowser": true,
            "environmentVariables": {
                "ASPNETCORE_ENVIRONMENT": "Development"
            },
            "applicationUrl": "http://localhost:12345/"
        }
    }
}

내가 편집 한 내용은 다음과 같습니다.

  • 포트 번호가 모두 동일한 번호가되도록 업데이트했습니다.
  • 한 지점에서 ssl : 0의 키 : 값 제거
  • 모든 https : // 인스턴스를 http : //로 업데이트했습니다.


0

이 솔루션은 저에게 효과적이었습니다.

  1. 프로젝트 폴더로 이동하여 폴더를 엽니 다 .vs(이 폴더는 때때로 숨겨 질 수 있으므로 숨겨진 항목 확인란을 선택하십시오)

  2. 에서 .vs폴더 - 공개 설정

  3. 그 applicationhost구성 파일이 보이십니까? 삭제 (프로젝트를 다시 컴파일하면 자동으로 다시 생성 될 것입니다.)


0

제 경우에는 Visual Studio 2017> Tools > Options

사이드 목록의 디버깅 메뉴에서 Edit and Continue

Uncheck 편집하고 계속하기 확인란

이것은 내 문제를 해결합니다.


0

나는 아래를 순서대로했고 그것은 나를 위해 일했습니다.

  1. .vs 폴더 삭제
  2. obj 폴더 삭제
  3. VS Studio 닫기
  4. 기계를 다시 시작하십시오

0

나에게이 문제는 구성이 사용자 정의로 설정 하였다 AsLive대신 Debug.

여기에 이미지 설명 입력

다시 설정하면 나를 위해 정렬되었습니다.


0

관리자 권한이없는 컴퓨터에서 동일한 문제가 발생했습니다.

프로젝트 폴더에서 .vs 폴더 (applicationhost.config 파일)를 제거하는 것만으로는 충분하지 않았습니다.

나를 위해 일한 것은 ...

  • 빈 폴더 삭제 (기존 프로젝트 재사용)
  • Obj 폴더 삭제
  • .vs 폴더 삭제
  • @vinayakhegde가 위에서 언급했듯이 프로젝트의 포트를 변경 (3000 사용)하고 가상 디렉터리도 만들었습니다.
  • -

Localhost는 지금까지 솔루션에 액세스하고 있습니다.

도움이되기를 바랍니다.


0

두 개의 태그에 동일한 포트가 제공되고이 두 포트에 다른 포트가 있는지 확인한 다음 기본 포트를 HTTP 또는 HTTPS 로 사용 IISExpressSSLPort하고 있기 때문에 때때로 https 및 http 포트가 동일 할 수 있습니다. DevelopmentServerPortIISUrl

https://localhost:44365
  • HTTPS 용 IISExpressSSLPort
  • HTTP 용 DevelopmentServerPort

그런 다음 솔루션 폴더에서 숨겨진 .vs 폴더를 삭제할 수 있습니다.

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