IIS7이 특정 IP 주소 및 포트에서 수신 대기하는 것을 중지하는 방법은 무엇입니까?

IIS7이 특정 IP 주소 및 포트에서 수신 대기하는 것을 중지하는 방법은 무엇입니까?

Windows Server 2008에 Apache를 설치하려고 합니다. Apache가 수신하도록 구성한 IP 주소를 바인딩할 수 없다는 경고와 함께 설치가 종료됩니다. 내가 사용할 때netstat -a -p tcp프로세스가 IP 주소와 포트를 수신하고 있는지 확인하기 위해 여러 전체가 표시됩니다. 그 중 하나는 0.0.0.0:80을 수신하는 것으로 표시됩니다. 다음은 출력의 일부 목록입니다.

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:80             MYSERVERNAME:0           LISTENING

이는 포트 80의 모든 IP 주소를 수신하는 IIS7인 것으로 보입니다. 혼란스러운 점은 IIS7을 중지했다는 것입니다. 모든 웹사이트가 중지된 것으로 표시됩니다. 나는 노력했다iisreset /STOPIIS7 관리자를 사용하는 것 외에도 여전히 0.0.0.0:80에서 수신 대기 중인 항목이 있습니다. 심지어 모든 웹사이트가 Apache용으로 해제하려는 IP 주소가 아닌 다른 IP 주소에 바인딩되어 있는지도 확인했습니다. 다른 사람이 이 문제를 겪은 적이 있나요?

답변1

"Agile Jedi"는 나를 올바른 길로 인도했습니다. "소켓 풀링 IIS7 비활성화"를 검색한 후훌륭한 기사그것은 단계별 지침을 제공했습니다. 나는 지시를 따랐고 확실히 효과가 있었습니다! IIS7이 모든 IP 주소를 바인딩하는 것을 중지할 수 있었습니다. 기본적으로 다음 명령으로 요약됩니다(기사가 삭제될 경우를 대비해 위 기사에서 이를 복사하여 붙여넣었습니다).

  1. 컴퓨터에 두 개의 IP가 있는지 추가하거나 확인하세요.
  2. 명령 프롬프트 열기
  3. 유형netsh
  4. 유형http
  5. 유형sho iplisten. 비어 있어야 합니다.
  6. 유형add iplisten ipaddress=192.168.0.90(IIS7을 바인딩하려는 공용 IP 주소를 사용하십시오)

IP 주소가 성공적으로 추가되어야 합니다.

  1. 유형sho iplisten다시

목록에 192.168.0.90이 표시되어야 합니다.

  1. 유형exitnetsh에서 나오려면

  2. 유형 유형netstat -an.

    목록에 192.168.0.90:80이 있는지 확인하세요. 0.0.0.0:80이 표시되면 다음을 수행하세요.iisreset

답변2

IIS는 소켓 풀링 성능을 위해 이를 수행합니다. 여러 APACHE/Windows 인스턴스가 나란히 실행되고 있습니다. 최신 버전의 IIS에서는 이것이 문제가 되지 않는다고 생각합니다. 어느 쪽이든 소켓 풀링을 비활성화해야 합니다.

IIS6용

http://support.microsoft.com/kb/238131

관련 정보