Kısacası : DisableSocketPooling (işlemini becerebilmek)
Müşterilerimizin portallerini tuttuğumuz makinalar üzerinde farklı hizmetleri farklı adreslerden sunma ihtiyacımızdan dolayı 3-4 yada daha fazla IP adresine sahip oluyor.
Farklı hizmet farklı farklı hizmet nedir derseniz, 1. IP nin 80.portunda IIS çalıştığını, 2.IP nin 80. portunda Mail serverinizin kendi Apache kurulumu çalıştırdığını hayal edin. Normal şartlarda IIS uygulamanız sistemdeki tüm IP adreslerinin 80. ve isterseniz 443. portlarını kendisine bağlayacak ve Apache veya herhangi bir başka elemanın o adresten çalışmasına engel olacaktır. Gene normal şartlarda IIS metabase.xml ini modifiye edip DisableSocketPooling=true diyerek bu işten sıyrılmanız cabası, ama bazen işe yaramayabiliyor. (Daha öncede uğraştığım için, ben artık bunu denemeden alttaki yol ile direk işimi hallediyorum.)
Win2K da bunu çözmek için biraz takla atmanız gerekse de (normalde 1-2 komutla yapmış gibi görünebiliyor ama olmuyor, sıkıntılı), W2003 de bu işlem nisbeten kolay. Yapmanız gereken, w2003 cd'sinden "Support Tools" u kurmak ve içerisinden "httpcfg" programını bulup şu şekilde kullanmak.
|
Start > Run kısmına gelin, cmd yazın. CD C:\Program Files\Support Tools
Önce hangi IP leri dinlediğinizi görün.
httpcfg query iplisten
listeden çıkarmak için
httpcfg delete iplisten -i aaa.bbb.ccc.ddd
yeni bir IP eklemek için
httpcfg set iplisten -i aaa.bbb.ccc.ddd
Bu işlemlerin sonucu başarılı olursa size 0 değeri döndürülecektir. HttpDeleteServiceConfiguration completed with 0
Bu işlemleri yaptıktan sonra IIS 6.0 ile birlikte gelen HTTP servisini yeniden başlatmak gerekiyor. Komut satırından ayrılmadan sırası ile net stop http /y net start w3svc
yapmanız yeterli. |
Bununla ilgili orjinal MS KB si şu adreste bulunuyor, her seferinde aramaktan yoruldum açıkçası :)
http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B813368
Aynı adreste IIS 5.0 ile nasıl yapılabileceğine dair de birşeyler bulunuyor.