IIS7 が特定の IP アドレスとポートをリッスンするのを停止するにはどうすればよいですか?

IIS7 が特定の IP アドレスとポートをリッスンするのを停止するにはどうすればよいですか?

Windows Server 2008にApacheをインストールしようとしています。インストールは、Apacheがリッスンするように設定したIPアドレスをバインドできないという警告で終了します。netstat -a -p tcpIP アドレスとポートでリッスンしているプロセスがあるかどうかを確認するために、いくつかのエントリを確認します。そのうちの 1 つは、0.0.0.0:80 でリッスンしていることが示されています。出力の一部を以下に示します。

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

これは、ポート80のすべてのIPアドレスをIIS7がリッスンしているように見えます。混乱しているのは、IIS7を停止したことです。すべてのWebサイトが停止していると表示されます。試してみましたiisreset /STOPIIS7 マネージャーも使用していますが、まだ 0.0.0.0:80 でリッスンしているものがあります。すべての Web サイトが、Apache 用に解放したい IP アドレスとは別の IP アドレスにバインドされていることを確認しました。他にもこれに遭遇した人はいますか?

答え1

「Agile Jedi」が私を正しい道へと導いてくれました。「ソケットプーリングIIS7を無効にする」を検索した後、素晴らしい記事そこには、ステップバイステップの指示がいくつかありました。指示に従うと、確かにうまくいきました。IIS7 がすべての IP アドレスをバインドするのを止めることができました。基本的には、次のコマンドに要約されます (記事が削除された場合に備えて、上記の記事からコピーして貼り付けました)。

  1. 追加またはマシンに2つの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. タイプexitネットから抜け出す

  2. タイプタイプnetstat -an

    リストに192.168.0.90:80があるかどうか確認してください。0.0.0.0:80がある場合は、iisreset

答え2

IIS はソケット プーリングのパフォーマンスのためにこれを行います。複数の APACHE/Windows インスタンスを並行して実行しています。新しいバージョンの IIS ではこれが問題にならないと思います。いずれにしても、ソケット プーリングを無効にする必要があります。

IIS6の場合

マイクロソフトサポートサイト

関連情報