Windows Server 2022 ile bir web sunucusu kurmak istediğinizde Microsoft'un kendi web sunucu yazılımı olan IIS (Internet Information Services) en doğal seçenektir. IIS, işletim sistemiyle birlikte gelen bir rol olduğundan ayrıca bir kurulum dosyası indirmenize gerek kalmaz; rolü etkinleştirmeniz ve sitenizi yapılandırmanız yeterlidir. Bu rehberde IIS rolünü ekleyecek, varsayılan siteyi üzerinden test edecek, kendi sitenizi ve uygulama havuzunuzu oluşturacak, port ve host bağlamasını yapacak ve güvenlik duvarı ile son doğrulamayı tamamlayacaksınız. Statik bir web sitesini (HTML/CSS/JS) barındırmak için gereken temel her şeyi adım adım ele alıyoruz.
Ön Koşullar
- Windows Server 2022 üzerinde yönetici (Administrator) yetkisine sahip bir hesap.
- Sunucuya ayrılmış sabit bir IP adresi (üretim ortamı için önerilir).
- Sitenizin dosyalarını koyacağınız bir klasör. Varsayılan içerik kök dizini klasörüdür; isterseniz ayrı bir klasör (örneğin ) de kullanabilirsiniz.
- HTTP trafiği için 80, HTTPS için 443 portlarının standart olduğunu unutmayın.
Adımlar
1. IIS (Web Server) rolünü ekleyin
Sunucu Yöneticisi (Server Manager) açıkken sağ üstten Manage > Add Roles and Features yolunu izleyin. Sihirbazda Role-based or feature-based installation seçili kalsın, hedef sunucuyu seçin ve Select server roles ekranında Web Server (IIS) kutusunu işaretleyin. Açılan pencerede gerekli yönetim araçları için Add Features düğmesine basın, ardından Install ile kurulumu tamamlayın.
Komut satırını tercih ediyorsanız, yönetici olarak açtığınız PowerShell penceresinde aşağıdaki komut aynı işi yapar ve yönetim araçlarını da kurar:
````
Server Core gibi grafik arayüzü olmayan kurulumlarda DISM ile de etkinleştirebilirsiniz:
````
Buradaki , IIS Web Server rolünün bağımlı bileşenlerinin de etkinleştirilmesini sağlar.
2. Varsayılan siteyi localhost ile test edin
Kurulum bittiğinde IIS, Default Web Site adında bir varsayılan site ile 80 numaralı portta otomatik olarak çalışmaya başlar. Sunucuda bir tarayıcı açıp adres çubuğuna şunu yazın:
````
Karşınıza varsayılan IIS karşılama (welcome) sayfası geliyorsa rol başarıyla kurulmuş demektir. Bu sayfanın dosyaları dizininde bulunur.
3. Site dosyaları için bir klasör hazırlayın
Kendi statik sitenizi düzenli tutmak için ayrı bir klasör oluşturun ve basit bir test sayfası ekleyin. ( cmdlet'i, fiziksel yol olarak verdiğiniz klasörün önceden var olmasını ister; bu yüzden klasörü siteyi oluşturmadan önce hazırlayın.)
````
IIS, bu klasördeki dosyaları okuyabilmek için varsayılan olarak grubunu kullanır; standart veya yeni oluşturduğunuz altındaki klasörlerde genellikle ek bir izin ayarı gerekmez.
4. Yeni bir uygulama havuzu (App Pool) oluşturun
Uygulama havuzu, sitenizin diğer sitelerden yalıtılmış kendi işleminde (process) çalışmasını sağlar; bu hem güvenlik hem de kararlılık için önerilir. IIS Manager (Internet Information Services Manager) içinde sol ağaçtan sunucu adınızı genişletin, Application Pools üzerine sağ tıklayıp Add Application Pool deyin ve bir ad verin (ör. ).
PowerShell ile aynı işlem:
````
Statik bir sitede .NET çalıştırmaya gerek yoksa, havuzun .NET CLR sürümünü No Managed Code olarak ayarlamak iyi bir uygulamadır.
5. Yeni siteyi oluşturun ve havuza bağlayın
IIS Manager'da Sites üzerine sağ tıklayıp Add Website seçin. Açılan pencerede şu alanları doldurun:
- Site name: Sitenizin adı (ör. ).
- Application pool: Bir önceki adımda oluşturduğunuz .
- Physical path: Site dosyalarının bulunduğu klasör ().
- Binding: Aşağıdaki adımda anlatılan port ve host ayarları.
PowerShell ile site oluşturup havuza atamak için:
````
Varsayılan site zaten 80 portunu kullandığından, yeni sitenizi çakışmadan test edebilmek için burada farklı bir port (örneğin 8080) verdik.
6. Bağlamayı (binding) yapılandırın
Bağlama; sitenin hangi port, IP ve host adı (host header) ile yanıt vereceğini belirler. Yeni sitenizi 80 portunda da çalıştırabilirsiniz, ancak aynı sunucuda birden fazla site 80 portunu paylaşacaksa her birine ayrı bir host adı (ör. ) atayarak ayırırsınız:
````
Host adıyla yapılan testlerde, bu adın sunucunun IP'sine çözümlenmesi için bir DNS kaydı veya yerel dosyası girişi gerekir.
7. Güvenlik duvarında portu açın
Windows Server 2022'de IIS kurulduğunda Windows Güvenlik Duvarı'ndaki World Wide Web Services (HTTP Traffic-In) kuralı otomatik olarak etkinleştirilir; bu kural 80 portunu dışarıya açar. Ancak 8080 gibi standart dışı bir port kullanıyorsanız o portu elle açmanız gerekir:
````
8. Dışarıdan doğrulayın
Son olarak siteye sunucunun IP adresiyle başka bir cihazdan erişmeyi deneyin:
````
Test sayfanız (ör. metni) görüntüleniyorsa kurulum eksiksiz tamamlanmıştır. Sayfa açılmıyorsa sırasıyla güvenlik duvarı kuralını, uygulama havuzunun çalışır (Started) durumda olduğunu ve bağlama bilgilerini kontrol edin.
İpuçları
- Varsayılan belge: Statik sitelerde IIS, , , gibi dosyaları belirli bir sırayla arar. Açılış dosyanızın bu listede olduğundan emin olun veya Default Document modülünden ekleyin.
- Yalıtım: Her siteye ayrı bir uygulama havuzu vermek, bir sitedeki sorunun diğerlerini etkilemesini önler.
- Loglar: Sorun yaşadığınızda altındaki IIS günlüklerini ve Olay Görüntüleyici'yi (Event Viewer) inceleyin.
- HTTPS: Üretim ortamında siteyi 443 portunda bir TLS sertifikasıyla yayınlamak ve HTTP'den HTTPS'e yönlendirme kurmak güvenlik açısından şarttır.
Sunucularınızı kurarken Windows Server ve Office ürünlerinde %100 orijinal lisans ve hızlı destek için Enlisans yanınızdadır.















