IIS 7.0 hakkında...

IIS 7.0, Microsoft'un yeni web sunucusu versiyonudur. Burada genel olarak IIS'in ne olduğundan, kısaca gelişiminden, ve özellikle IIS 7.0'nin bazı yeni özelliklerinden bahsedeceğim.

IIS Nedir?

IIS (Internet Information Server), temelde Windows işletim sistemlerinin bir bileşenidir. Aslında birden fazla servisten oluşur. Mimari detaylarına burada girmeyeceğim. Ancak burada önemli nokta şudur: IIS işletim sisteminin bir bileşeni olduğundan, belirli bir versiyonunu başka bir işletim sistemi versiyonuna kurmak mümkün değildir. IIS'in versiyonlarının işletim sistemlerine göre listesi şöyledir:

IIS Versiyonu

İşletim sistemi

IIS 1.0

Windows NT 3.51

IIS 2.0, 3.0, 4.0

Windows NT 4.0

IIS 5.0

Windows 2000

IIS 5.1

Windows XP

IIS 6.0

Windows 2003 Server

IIS 7.0

Windows Vista ve Windows Server 2008

IIS bileşeni, versiyonlar arasında farklılıklar olsa da, şu alt bileşenlerden oluşur:

- Web sunucusu

- FTP sunucusu

- SMTP sunucusu

- NNTP sunucusu

SMTP ve NNTP işlevleri bu blogun konusu olmadığı gibi, benim uzmanlık alanlarım da olmadığından burada bahsetmeyeceğim. FTP sunucusu işlevinin de çok fazla detayına girmeyeceğim ama çok beklenen bir özellik olduğundan şunu belirtmeden de geçmek istemedim: IIS 7.0 ile artık “FTP over SSL” sunmak mümkündür. Bunun detaylarını burada bulabilirsiniz.

IIS 7.0’nin getirdiği yeniliklerden bazıları

Burada, en azından şu an için, çok fazla detaya giremeyeceğim. Ancak bence önemli olan bazı yenilik ve değişikliklerden bahsedeceğim. Burada ise IIS 7.0’yle ilgili çok daha detaylı bilgiler bulmanız mümkündür.

- Mimari değişiklikleri: Uygulamalarımız hala w3wp.exe isimli “process” tarafından taşınıyor. Ancak bu “process”lerin mimarisi tamamen değişti. Tamamen modüler yapıya geçilmiş oldu. Bunun faydalarını burada sıralamaya kalkarsam çok uzun ve muhtemelen sıkıcı bir blog haline gelir burası. Fakat şunu söylemeden geçemeyeceğim: Bu yapı sayesinde örneğin ASP.NET’in “forms authentication” özelliğini herhangi bir tür uygulama için kullanabiliriz. Hatta imajlar gibi statik içerik için bile kullanabiliriz. (Detaylar)

- Uzaktan yönetim ve IIS yöneticileri kavramı: Artık web sitesi, ve hatta uygulama bazında, farklı kullanıcılara farklı haklar verebiliyoruz. Bunun için tanımlayacağımız kullanıcılar “domain” kullanıcısı olmak zorunda da değil artık. IIS üzerinde, IIS yöneticileri yaratıpi hak tanımlaması yapabiliyoruz.

Uzaktan yönetim ise, artık, yine IIS üzerinde çalışan bir web servis üzerinden HTTPS ile gerçeklestiriliyor. Bu da, güvenlikten ödün vermeden her yerden erişilebilirlik sağlamış oluyor. (Detaylar)

- Tamamen yeni yönetim konsolu: Muhtemelen ilk gördüğünüzde çok yadırgayacaksınız, çünkü konsol tamamen değiştirildi. Ancak alıştıktan sonra çok daha kullanışlı bir yönetim konsolu olduğunu göreceksiniz. En azından ben böyle düşünüyorum.

- Failed Request Tracing: IIS 6.0 üzerinde Service Pack 1 sonrası bu özellik gelmişti. Ancak kullanması pek kolay değildi. Zaten bir grafik arayüzü de yoktu. Bu özellik, adından da anlaşılacağı üzere, başarısız olan isteklerle ilgili kayıt tutulmasını sağlıyor. Tam olarak hangi isteklerle ilgili ne kadar detaylı kayıt tutulacağını da biz ayarlayabiliyoruz. Örneğin, HTTP durum kodu olarak “500 Internal Server Error” dönülmüş isteklerle ilgili kayıt tutulsun diyebiliriz. Veya işlenmesi 30 saniyeden uzun süren isteklerin kaydını tutabiliriz. Böylece sorun zamanını yakalayamasak da, sorun hakkında detaylı bilgi elde edebileceğiz. (Detaylar)

- View current requests: Bu özellik de Windows 2003 SP1 ile gelmişti. IIS 7.0’de ise IIS arayüzünden erişilebilir ve kontrol edilebilir oldu. Yine isminden anlaşılacağı üzere, herhangi bir w3wp.exe üzerinde o an aktif olarak çalışan isteklerin listesini görebiliyoruz. İsteklerle ilgili olarak görebildiğimiz bilgilerin bazıları şunlardır: Web sitesi, URL, istemci IP’si, o anki statüsü, modül adı ve ne kadardır aktif olduğu. Bu bilgiler ışığında, herhangi bir sorun anında, hangi uygulamadaki hangi sayfanın bu soruna neden olduğunu görebileceğiz.

Yukarıdakiler, IIS 7.0’nin getirdiği yeniliklerin sadece küçük bir bölümüdür. Yukarıdaki linkleri incelerseniz, bu listenin çok çok uzun olduğunu göreceksiniz. Benim şahsi görüşüm, sadece yukarıda bahsettiğim özellikler için bile IIS 7.0 kullanılabileceği yönündedir.

İleride, zaman zaman, bu yeniliklerin bazılarıyla ilgili daha detaylı bloglar yazmayı düşünüyorum.

CENK ISCAN