단일 서버는 당사의 기본 웹사이트(Apache에서 호스팅)와 Exchange OWA 사이트(IIS에서 호스팅)를 공유합니다.
사이트에는 2개의 서로 다른 공용 IP가 있으며 2개의 서로 다른 URL이 있습니다. 그러나 IIS는 서버에 할당된 모든 고정 IP를 확보해야 한다고 주장합니다.
나는 약간의 조사를 했고 다음 링크를 발견했습니다.http://support.microsoft.com/kb/892847
저는 IIS 6.0을 사용하고 있습니다. 계속해서 소켓풀링을 비활성화하고 다시 시작했습니다. httpcfg를 사용하여 2개의 내부 IP(xxx11:80, xxx11:443)에 IIS를 할당했으며 이제 IIS 사이트는 Apache가 꺼진 경우에도 포트가 사용 중인 것처럼 작동합니다. Apache 구성을 다시 확인하고 필요한 경우 .12 IP를 지정했습니다.
ListenOnlyList를 살펴보니 올바른 것 같습니다. 2개의 항목과 올바른 포트가 있습니다.
재미삼아 소켓풀링을 다시 켜보니 모든 것이 작동합니다. Active Ports 프로그램을 사용하면 IIS를 켜고 끌 때 0.0.0.0:80이 사용 및 사용 중지되는 것을 볼 수 있습니다.
소켓풀링을 다시 끄고 상황이 다시 악화되었습니다.
IIS가 ListenOnlyList를 완전히 무시하는 것 같습니다. ListenOnlyList를 0.0.0.0으로 변경한 경우를 제외하면 IIS는 원활하게 작동합니다. IIS를 다시 확인하고 IP가 일치하는지 확인했습니다. 일치합니다. All Unsigned가 아니라 실제로 xxx11에 있습니다. 미친.
어떤 아이디어가 있나요?
답변1
특히 소켓 풀링을 비활성화하면 IIS6에서 작동하지 않습니다. 대신 언급된 레지스트리 키를 변경한 다음 httpcfg 작업을 수행해야 합니다.
레지스트리 키를 변경했다고 가정하면 httpcfg query ilisten 실행 결과는 무엇입니까?
답변2
IIS의 웹 사이트 속성에서 IIS 서버의 IP 주소만 선택했습니까? "(모두 할당되지 않음)"이 선택되어 있을 수 있습니다. 이것이 문제가 해결될지는 잘 모르겠지만 확인해 볼 가치가 있습니다.
답변3
나는 이것을 작동시키기 위해 httpcfg에서 사용하는 단계를 자세히 설명하는 블로그 게시물을 작성했습니다.
원래:
- IIS에 대한 일부 IP 주소 바인딩을 수동으로 생성(따라서 "모두 포괄" 시나리오를 생성하지 않음)
- 위 바인딩에 없는 IP 주소나 포트에서 실행되도록 Apache를 설정합니다.