IIS에서 사이트를 시작할 수 없음 (다른 프로세스에서 사용)


96

IIS에서 사이트를 시작하려고하면 다음과 같이 표시됩니다.

다른 프로세스에서 사용했기 때문에 프로세스가 파일에 액세스 할 수 없습니다.

Google에서 검색 한 결과 다른 사이트에서 포트 80을 사용하고있을 수 있지만 MyIIS에서는이 사이트 만 포트 80을 사용하고 있음을 확인했습니다. 포트 80을 사용하는 또 다른 문제가 있거나 관련된 다른 문제가 있습니까?


시스템을 한 번 다시 시작한 다음 시도하십시오.
عثمان غني

나는이 같은 문제가 발생할 다시 BU 않았다

1
다른 포트에서 실행되도록 IIS를 구성 해보십시오. 컴퓨터에서 다른 서버가 실행 중일 수 있습니다. 아파치 인스턴스가 있습니까? 감염된 컴퓨터에서도 80 번 포트를 백도어로 여는 웜이 있습니다.
nunespascal

이 오류 텍스트는 확실히 도움이되지 않지만 이벤트 뷰어 로그를 확인하면 포트 8080 (내 IIS의 웹 사이트에서 사용됨)에 바인딩하는 동안 오류가 발생했다는 힌트를 제공합니다. 내 창에 10 상자가에서 두 가지 오류를 기록 IIS-W3SVC 하고 HttpEvent소스. 두 번째 이벤트 로그 텍스트- Unable to bind to the underlying transport for [::]:8080. 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.. Oracle 서비스에서 포트 8080을 사용 중입니다. 나는 8081에 내 웹 사이트가 사용하는 포트를 변경
통화 연결음

답변:


176

netstat -aon또는 netstat -aon | findstr 0.0:80명령 프롬프트에서 어떤 프로세스 ID가 포트 : 80에 대해 청취 중인지 확인한 다음 작업 관리자 에서 해당 프로세스 ID (PID)를 확인 하고 보기-> 열 선택-> 프로세스 ID를 확인하십시오. 해당 프로세스를 종료하고 IIS를 다시 시작하면 완료됩니다. ( 참고 : Skype가 설치되어 있는 경우 먼저 해당 프로세스를 종료하십시오. )

최신 작업 관리자 에서 PID를 검색 하려면 세부 정보 탭으로 이동해야합니다 . 또는 주석에서 @Nikita G 가 언급 했듯이이 명령을 사용하여 명령 프롬프트에서 작업을 찾을 수 있습니다.

tasklist /FI "PID eq 123"

참고 : 123첫 번째 명령에서 반환 된 PID로 변경 합니다.


11
Skype 의견에 대해서도 감사드립니다.
키스

Skype는 포트 80에서 실행 중이고 내 웹 사이트도 포트 80에서 구성되었으므로 skype에서 로그 아웃하여이 문제를 해결 한 다음 포트 8080에서 실행되도록 skype 설정을 변경했습니다. (IIS를 시작할 필요가 없음)
Umar Shafeeq

1
마이크로 소프트 제품이 싸울 때 즐겁습니다. 알 수없는 이유로 다시 컴퓨터를 다시 시작해야하고 그 원인을 파악할 에너지가 부족할 때까지 (지금까지) 컴퓨터를 계속 다시 시작해야합니다. 진지하게, 너무 짜증나.
andyface 2015-04-15

10
여기에 좀 더 쉬운 방법이 있습니다. 포트 80에서 수신하는 항목 만 표시 : netstat -aon | findstr 0.0:80. 그런 다음 PID 123을 반환한다고 가정하고 다음을 실행하여 어떤 프로세스인지 확인 tasklist /FI "PID eq 123"합니다..
Nikita G.

1
OracleServiceXE에게는 IIIS 서버의 새 웹 사이트가 바인딩하려는 포트 8080을 먹은 서비스였습니다.
RBT

35

다른 프로세스가 포트 80을 사용하기 때문에 발생하며 Skype와 같은 PC의 채팅 응용 프로그램 일 수 있습니다.

먼저 80이었던 기본 웹 사이트 포트를 사용하지 않는 포트 (예 : 8087)로 변경합니다. 이를 위해 응용 프로그램을 마우스 오른쪽 버튼으로 클릭 한 다음 '바인딩 편집'을 클릭합니다.

여기에 이미지 설명 입력

여기에 이미지 설명 입력

이 포트 변경 후 다시 시작하십시오. 이제 어떤 프로세스가 IIS 포트 80을 차단하고 있는지 확인할 수 있습니다.이를 확인하려면 프로세스 ID와 함께 포트 세부 정보를 표시하는 netstat 명령을 사용하십시오.


6
Skype는 내 문제였다
nbushnell

여기서도 스카이프는 포트 80을 사용하고있었습니다. 옵션-> 고급-> 연결-> "추가를 위해 포트 80 및 442 사용 ..."에서 비활성화합니다.
Wagner da Silva


10

이 명령을 실행하여 포트를 사용중인 애플리케이션 또는 서비스를 찾은 다음 작업 관리자에서 추적 할 수도 있습니다 (웹 배포 에이전트 서비스가 아닌 경우 제공됨).

netstat -o -n -a | findstr 0.0 : 80

그런 다음 작업 관리자를 열고 프로세스로 이동하여 "모든 사용자에 대한 프로세스 표시"확인란을 클릭 한 다음보기 메뉴를 클릭하고 열로 이동하고 PID 열을 추가합니다.

netstat 명령의 프로세스 ID를 작업 관리자의 PID와 일치 시키면 포트를 사용하는 서비스 또는 응용 프로그램을 찾을 수 있습니다.


2
작업 관리자를 열지 않으려면 바로 다음 명령을 실행하여 어떤 프로세스인지 확인하십시오 tasklist /FI "PID eq <PID from netstat (without brackets)>".
Nikita G.

2

다른 사람들이 말했듯이 다른 것이 포트 80 또는 443을 사용하고있을 수 있습니다. 저에게는 VMWare Workstation Server 였지만 netstat 사용 방법에 대한 다른 답변을 확인하십시오.


포트 443을 언급하기 위해 +1. netstat포트 80을 확인 하는 데 사용했지만 아무것도 표시되지 않았습니다. 그런 다음 포트 443을 언급했는데 거기에있었습니다.
jtate

1

나는이 링크 가이 문제에 대한 꽤 좋은 설명과 수정을 제공한다고 생각합니다 http://support.microsoft.com/KB/890015

대부분의 경우; 이는 다음 두 가지 이유 중 하나에 의해 발생합니다. 1) 포트 80이 다른 시스템에서 사용되고 있으며 다른 사용자가 제안한대로 netstat -o -n -a | findstr 0.0 : 80을 사용하여 이것이 사실인지 확인할 수 있습니다. 그렇다면 작업 관리자에서 프로세스를 종료하십시오 (모든 사용자의 프로세스 표시를 선택하십시오).

2) 포트 80이 사용되지 않는 경우 두 번째 원인은 잠재적으로 HTTP-> Parameters의 레지스트리 키에있는 ListenOnlyList의 잘못된 IP 주소입니다. 링크를 따라 키를 수동으로 설정하거나 실제로 (xp 및 server 2003) httpcfg delete iplisten -i ipaddress을 사용하여 잘못된 IP 주소를 삭제할 수 있습니다. ipaddress를 편집 한 후에는 http를 다시 시작해야합니다!


@bummi 댓글 주셔서 감사합니다. 이제 좀 더 자세한 내용을 추가했습니다.
stt106 2014

0

제 경우에는 포트 80을 실행하고 사용 하는 " Sync Share Service "(SyncShareSvc)였습니다. netstat는 80을 무료로 표시했습니다. 80이 아닌 다른 포트에서 사이트를 실행할 수는 있습니다. 호스트 이름을 추가하면 IIS에서 사이트를 시작할 수 있지만 localhost (또는 호스트 이름)를 검색 할 때 Digest 인증을 요청하는 메시지가 표시됩니다. 추가됨). 익명 및 양식 인증 만 IIS에서 활성화되었습니다 ...

또한 IIS를 중지 한 후에도 http://localhost다이제스트 인증을 요청하는 메시지가 계속 표시됩니다.

제 경우 해결책은 설치된 서비스에서 파일 및 스토리지 서비스> 파일 및 iSCSI 서비스> " 클라우드 폴더 " 를 제거하는 것이 었습니다 (다시 시작해야 함).

"Work Folders"서비스를 제거하고 다시 시작한 후 IIS가 예상대로 작동했습니다.


0

제 경우는 RD 웹 액세스를 설치 한 후 원래 기본 웹 사이트를 시작할 수 없었습니다. RD 웹 액세스 역할이 제거되었습니다. 포트 443 바인딩을 제거하여 문제를 해결했습니다.


0

이것이 웹 개발자에 의해 발생하는 대부분의 경우 아파치의 이유이므로 아파치에서 구성 파일로 이동하면! 그것을 열고 ctrl + f를 80으로 검색하고 ip를 8080으로 변경하고 그 아래의 문장을 80에서 8080으로 변경하고 xampp 또는 현재 사용중인 프로그램을 구성해야합니다

내가 너희들을 도울 수 있기를 바랍니다


문제는 아파치가 아니라 IIS에 관한 것입니다.
C. Helling

1
네,하지만이 두 프로그램은 그래서 어쩌면 내가 가지고 같은 문제가있는 사람이 도움이됩니다 서로 방해
아르네 SCHOUTEN

0

보다 의미있는 정보를 얻으려면 발행시 소유권 정보를 가져 와서 netstat80 (기본 http 바인딩) 또는 443 (https 바인딩이 정의 된 경우)을 사용하는 프로세스를 알 수있는 방법이 있습니다.

 netstat -ab

제 경우 범인은 vmware였습니다.

TCP 0.0.0.0:443 ComputerName : 0 수신 중
[vmware-hostd.exe]

netstat는 포트 80 또는 443 (예 :)을 검색하기 위해 find에 파이프 될 수 find ":443"있지만 이러한 특정 활성 연결은 쉽게 볼 수있는 목록의 시작 부분에 표시됩니다.

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