IISとApacheの共存(Windows2008R2)
Windows2008R2で
IISとApacheを共存させる方法。
一番一般的と思われるのはポート番号を
それぞれ別にする方法。
IISは80で、Apacheは8080とかね。
ただURLにポート番号入れたりとかはなんとなく
見た目が悪いのでやりたくない。
(そんなこと考えるならサーバ分けろよって言われると
身もふたもないのだが・・・。)
で、今回は別の方法。
今回のサーバはNIC2枚差しだったので、
IPアドレスを2個もってました。
ということで、それぞれのアドレスにバインドする方法を
探してみました。
Apacheの設定はhttpd.confの中で
Listen 192.168.1.1:80
といった感じで、IPアドレスとポートを指定すればOK。
IIS側の設定はバインドというところで
IPアドレスをリストから選択、ポート番号は記入できる。
これでOKと思ったら、そんなに世の中あまくなかった。
どうやらIISはバインドを設定しても
自分のサーバが持っている全IPに対して
指定したポートでバインドするらしい。
(いらねーことしやがって!)
これを解除するには、コマンドプロンプトで
netsh http add listen ipaddress=10.0.0.1:80
とすると、IISでバインドするアドレスが、
上の例だと10.0.0.1だけになる。
参考(http://msdn.microsoft.com/ja-jp/library/ms733768.aspx)
これで別々のIPアドレスに対して
ApacheとIISを共存させることができました。
めでたし、めでたし。