ASP.NET Hosting Nedir? Windows’ta .NET Barındırma

ASP.NET Hosting Nedir? Windows’ta .NET Barındırma

Kısaca

ASP.NET hosting, Microsoft’un .NET teknolojisiyle geliştirilen web uygulamalarını çalıştırmak için tasarlanmış barındırma hizmetidir. Klasik ASP.NET (Web Forms) yıllarca yalnızca Windows ve IIS ile anıldı; ancak 2016’dan bu yana ASP.NET Core ile birlikte .NET artık Linux üzerinde de sorunsuz çalışan, çapraz platform bir yapıya dönüştü. 2026 itibarıyla yeni projelerin büyük çoğunluğu Linux sunucularda Kestrel ve ters vekil (reverse proxy) mimarisiyle barındırılıyor.

  • Klasik ASP.NET Framework Windows’a bağlıdır; modern ASP.NET Core hem Windows hem Linux’ta çalışır.
  • Windows tarafında IIS, Linux tarafında Kestrel + Nginx en yaygın barındırma modelleridir.
  • Yeni geliştirmelerde .NET 8 (LTS) veya .NET 10 tercih etmek, uzun destek ömrü ve yüksek performans sağlar.

ASP.NET hosting, adını yıllardır “Windows hosting” ile birlikte duyduğunuz bir kavram. Ancak bu ikilinin arasındaki bağ, sandığınızdan çok daha zayıf hale geldi. Bir zamanlar “.NET yazdıysan Windows sunucu kiralarsın” kuralı kesindi; bugün ise aynı uygulamayı çoğu zaman Linux üzerinde daha ucuza, daha hızlı ve daha esnek biçimde çalıştırabiliyorsunuz. Bu yazıda ASP.NET hosting’in ne olduğunu, Windows ve Linux tarafındaki farkları, hangi .NET sürümünü seçmeniz gerektiğini ve doğru altyapıyı nasıl belirleyeceğinizi somut örneklerle ele alacağız.

ASP.NET Hosting Nedir?

ASP.NET, Microsoft’un geliştirdiği açık kaynaklı bir web uygulama çerçevesidir (framework). C# diliyle yazılan dinamik web siteleri, RESTful API’ler ve kurumsal uygulamalar bu çerçeve üzerinde inşa edilir. ASP.NET hosting ise, bu uygulamaların çalışması için gereken çalışma zamanını (runtime), web sunucusunu ve veritabanı bağlantılarını sağlayan barındırma ortamıdır.

Bir PHP sitesi için sunucuya PHP yorumlayıcısı kurulur; benzer şekilde bir .NET uygulaması için de sunucuda uygun .NET Runtime bulunmalıdır. İşte ASP.NET hosting’i sıradan bir barındırma paketinden ayıran temel nokta budur: sunucunun, uygulamanızın hedeflediği .NET sürümünü tanıması ve çalıştırabilmesi gerekir.

ASP.NET Framework ile ASP.NET Core Arasındaki Fark

Kafa karışıklığının büyük bölümü, “ASP.NET” adının iki farklı şeyi anlatmasından kaynaklanır:

Mail hosting 1 ay ücretsiz
  • ASP.NET Framework (klasik): 2002’den beri var olan, yalnızca Windows üzerinde çalışan sürüm. Web Forms mimarisi ve System.Web bağımlılıkları bu ailededir. Windows Server ve IIS web sunucusuna sıkı sıkıya bağlıdır. Eski kurumsal sistemler, ERP entegrasyonları ve Web Forms projeleri hâlâ bu tarafta yaşar.
  • ASP.NET Core (modern .NET): 2016’da tanıtılan, çapraz platform, yeniden yazılmış sürüm. Windows, Linux ve macOS üzerinde çalışır. Bugün Microsoft bu sürümü çoğu zaman sadece “.NET” olarak adlandırır. .NET 5, 6, 7, 8, 9 ve 10 hep bu ailenin üyeleridir.

Pratik sonuç şu: Eğer projeniz ASP.NET Web Forms ise ya da yalnızca Windows’ta bulunan bir bileşene bağımlıysa, Windows barındırmaya mecbursunuz. Ancak yeni yazılan ya da .NET Core’a taşınmış bir uygulamaysa, tercihiniz artık işletim sistemine göre değil, performans ve maliyet dengesine göre şekilleniyor.

Windows’ta .NET Barındırma: IIS ve Hosting Bundle

Windows tarafında ASP.NET uygulamaları geleneksel olarak IIS (Internet Information Services) üzerinde çalışır. IIS, Windows Server ile birlikte gelen, olgun ve yönetilebilir bir web sunucusudur. Modern .NET Core uygulamalarını IIS üzerinde çalıştırmak için sunucuya .NET Hosting Bundle kurulur; bu paket hem çalışma zamanını hem de ASP.NET Core Module (ANCM) bileşenini yükler.

IIS üzerinde iki barındırma modeli vardır:

  • In-process (süreç içi) barındırma: Uygulama, IIS iş sürecinin (w3wp.exe) içinde doğrudan çalışır. Yeni projeler için önerilen varsayılan modeldir; ek bir ağ geçişi olmadığı için Microsoft’un ölçümlerinde belirgin biçimde daha yüksek istek kapasitesi sunar.
  • Out-of-process (süreç dışı) barındırma: IIS ters vekil gibi davranır, istekleri arka planda çalışan Kestrel sunucusuna iletir. Belirli senaryolar için gerekli olsa da ek bir geri döngü (loopback) katmanı getirir.

Windows barındırmanın bir diğer klasik gerekçesi MSSQL (Microsoft SQL Server) veritabanıdır. Kurumsal .NET uygulamalarının önemli bir kısmı SQL Server ile çalışır ve bu veritabanı Windows ortamıyla birlikte anılır. Windows barındırma paketleri genellikle Plesk kontrol paneli, IIS yönetimi ve MSSQL veritabanı yönetimini bir arada sunar.

Linux’ta .NET Barındırma: Kestrel ve Ters Vekil

Modern .NET’in en büyük kazanımı, çapraz platform olması. ASP.NET Core uygulamaları kendi yüksek performanslı web sunucusu Kestrel ile birlikte gelir. Kestrel doğrudan internete açık çalıştırılmak yerine, üretim ortamında bir ters vekilin (reverse proxy) arkasına yerleştirilir. Linux tarafında en yaygın desen şudur:

  • Nginx (veya LiteSpeed gibi bir web sunucusu) TLS/SSL sonlandırmasını yapar, statik dosyaları sunar, istek arabelleğe alma ve bağlantı sınırlaması gibi görevleri üstlenir.
  • Kestrel yalnızca .NET uygulama katmanını çalıştırır.

Bu yaklaşım, Microsoft’un Linux dağıtımları için resmi olarak önerdiği yöntemdir. Kestrel’i tek başına, hiçbir vekil olmadan internete açmak önerilmez; çünkü sıkılaştırılmış istek filtreleme ve güvenlik özellikleri asıl web sunucusu katmanında bulunur.

Windows Hosting mi, Linux Hosting mi?

Bu karar, kişisel tercihe ya da yerel bilgisayarınızın işletim sistemine göre değil, uygulamanızın teknoloji yığınına göre verilmelidir. Aşağıdaki tablo net bir yol haritası çizer:

Kriter Windows Barındırma Linux Barındırma (ASP.NET Core)
Uygun senaryo ASP.NET Web Forms, klasik .NET Framework, MSSQL bağımlı sistemler Yeni .NET Core / .NET 8+ uygulamaları, API’ler, mikroservisler
Web sunucusu IIS Kestrel + Nginx / LiteSpeed
Kontrol paneli Genellikle Plesk cPanel, Plesk veya DirectAdmin
Tipik veritabanı MSSQL PostgreSQL, MySQL, MariaDB
Maliyet Lisans nedeniyle genellikle daha yüksek Daha ekonomik
Konteynerleştirme Mümkün ama daha ağır Docker ile son derece uyumlu

Özetle: Elinizde eski bir Web Forms projesi varsa Windows tarafına yönelmek zorunda kalabilirsiniz. Ancak modern bir .NET uygulaması geliştiriyorsanız, çoğu durumda Linux üzerinde daha düşük maliyetle ve daha yüksek performansla barındırma yapabilirsiniz. Windows Server lisansı bulunmadığı için Linux paketleri genellikle eşdeğer Windows paketlerinden daha uygun fiyatlıdır.

2026’da Hangi .NET Sürümünü Seçmelisiniz?

Sürüm seçimi, hem uygulamanızın destek ömrünü hem de güvenlik güncellemelerini doğrudan etkiler. .NET, iki tür destek döngüsü izler:

  • LTS (Long Term Support): Uzun destekli sürümler. Üç yıl güncelleme alır. .NET 6, .NET 8 ve .NET 10 bu gruptadır. Üretim ortamı ve kurumsal projeler için ideal seçimdir.
  • STS (Standard Term Support): Kısa destekli sürümler (.NET 7, .NET 9). 18 ay destek alır; en yeni özellikleri denemek isteyen ekipler için uygundur.

2026 itibarıyla yeni bir projeye başlıyorsanız, sağlam bir tavsiye şudur: en az .NET 8 (LTS), mümkünse .NET 10 kullanın. .NET 8, uzun destek süresi ve olgunlaşmış ekosistemiyle üretim ortamlarında güvenli bir zemin sunar. .NET 10 ise NativeAOT (native ahead-of-time derleme) gibi yeniliklerle daha hızlı başlangıç süreleri ve daha küçük bellek ayak izi sağlar.

Barındırma sağlayıcınızı seçerken, sunucunun hedeflediğiniz .NET sürümünü desteklediğinden emin olun. Modern .NET’in güzel yanı, yan yana (side-by-side) kuruluma izin vermesidir; yani aynı sunucuda farklı .NET sürümleri bir arada yaşayabilir ve her uygulama kendi sürümüyle çalışabilir. Ayrıca “self-contained” (kendi kendine yeten) dağıtım yöntemiyle, uygulamanızı çalışma zamanıyla birlikte paketleyip sunucudaki sürümden bağımsız hale getirebilirsiniz.

ASP.NET Uygulamanız İçin Doğru Altyapı Neye Benzer?

Barındırma modelinden bağımsız olarak, üretime çıkan bir .NET uygulaması için altyapının karşılaması gereken bazı temel şartlar vardır:

  • Güçlü ve öngörülebilir donanım: .NET uygulamaları CPU ve bellek açısından verimlidir, ancak yoğun trafik altında kararlı işlemci ve hızlı depolama kritik önem taşır. All-flash NVMe depolama, veritabanı sorgu sürelerini gözle görülür biçimde iyileştirir.
  • Ücretsiz ve otomatik SSL: Kestrel’in önündeki vekil katmanında HTTPS sonlandırması yapmak standarttır; sağlayıcının ücretsiz SSL sunması işinizi kolaylaştırır.
  • DDoS koruması ve WAF: İnternete açık her API için ağ katmanı (L3-L4) DDoS koruması ve web uygulama güvenlik duvarı olmazsa olmazdır.
  • Günlük yedekleme: Veritabanı ve uygulama dosyalarının düzenli yedeklenmesi, bir sorun anında geri dönüş imkânı sağlar.
  • Kaynak izolasyonu: Paylaşımlı ortamlarda, komşu bir sitenin sizi etkilememesi için hesap bazında kaynak ve süreç izolasyonu gereklidir.

Alastyr hosting altyapısı, İzmir’deki kendine ait (kiralık olmayan) veri merkezinde, N+1 yedekli ve Tier III standartlarında bir ortam sunar. Dell EMC Unity 650F all-flash depolama, Intel Xeon Gold işlemciler ve Juniper omurga ile desteklenen bu altyapıda; Voxility tabanlı 1 Tbps üzeri L3-L4 anti-DDoS koruması, Imunify360 güvenlik katmanı, ücretsiz SSL, günlük yedekleme ve %99.9 çalışma süresi (uptime) standart olarak yer alır. Daha fazla kaynak ve tam kök (root) erişimi gerektiren .NET projeleri için ise VPS sunucu ve bulut sunucu seçenekleriyle, .NET Runtime kurulumundan Kestrel yapılandırmasına kadar tam kontrol sizde olur.

2002’den beri %100 Türk sermayesiyle hizmet veren, RIPE NCC üyesi ve BTK akredite .TR kayıt kuruluşu olan Alastyr; TÜRKAK onaylı ISO 9001 ve ISO 27001 sertifikalarına sahiptir. Projenize uygun bir alan adı arıyorsanız domain sorgulama aracıyla başlayabilir, gerekli güvenlik katmanı için SSL sertifikası seçeneklerini inceleyebilirsiniz.

Sıkça Sorulan Sorular

ASP.NET hosting mutlaka Windows mu gerektirir?

Hayır. Klasik ASP.NET Framework (özellikle Web Forms) yalnızca Windows üzerinde çalışır. Ancak 2016’dan beri gelen ASP.NET Core (modern .NET), Windows’un yanı sıra Linux ve macOS üzerinde de çalışır. Yeni projelerin büyük çoğunluğu bugün Linux sunucularda barındırılmaktadır.

ASP.NET Framework ile ASP.NET Core arasındaki fark nedir?

ASP.NET Framework, yalnızca Windows’ta çalışan ve IIS’e sıkıca bağlı klasik sürümdür. ASP.NET Core ise çapraz platform, yeniden yazılmış modern sürümdür; Windows ve Linux üzerinde çalışır, daha yüksek performans sunar ve konteynerleştirmeye çok daha uygundur. .NET 5 ve sonrası bu ailede yer alır.

Windows hosting Linux hosting’den neden daha pahalı?

Windows barındırma, Windows Server işletim sistemi lisansı gerektirir. Bu lisans maliyeti fiyatlara yansıdığı için Windows paketleri genellikle eşdeğer Linux paketlerinden yüzde 20 ila 50 daha yüksek fiyatlıdır. Linux tarafında böyle bir lisans ücreti bulunmaz.

Kestrel nedir ve tek başına kullanılabilir mi?

Kestrel, ASP.NET Core ile birlikte gelen yerleşik web sunucusudur. Yüksek performanslıdır, ancak üretim ortamında doğrudan internete açık çalıştırılması önerilmez. Bunun yerine Nginx veya LiteSpeed gibi bir ters vekilin arkasına yerleştirilir; vekil katmanı TLS sonlandırması ve güvenlik filtrelemesini üstlenir.

2026’da hangi .NET sürümünü kullanmalıyım?

Yeni bir projeye başlıyorsanız en az .NET 8 (LTS), mümkünse .NET 10 kullanmanız önerilir. LTS sürümleri üç yıl destek aldığı için üretim ortamları ve kurumsal projeler için daha güvenlidir. En yeni özellikleri denemek isteyenler için .NET 9 gibi STS sürümleri de bir seçenektir.

IIS’te in-process ve out-of-process barındırma arasındaki fark nedir?

In-process barındırmada uygulama, IIS iş sürecinin içinde doğrudan çalışır ve ek ağ geçişi olmadığı için daha yüksek istek kapasitesi sunar; yeni projeler için önerilen varsayılan modeldir. Out-of-process barındırmada ise IIS ters vekil gibi davranarak istekleri arka plandaki Kestrel’e iletir ve ek bir geri döngü katmanı ekler.

MSSQL için mutlaka Windows sunucu mu gerekir?

SQL Server geleneksel olarak Windows ortamıyla anılsa da modern .NET uygulamaları PostgreSQL, MySQL ve MariaDB gibi Linux dostu veritabanlarıyla da sorunsuz çalışır. Eğer uygulamanız özellikle MSSQL’e bağımlı değilse, Linux tarafında açık kaynak bir veritabanı kullanarak maliyeti düşürebilirsiniz.

ASP.NET Core uygulamamı VPS üzerinde çalıştırabilir miyim?

Evet. Tam kök erişimi sunan bir VPS ya da bulut sunucuda, istediğiniz .NET Runtime sürümünü kurup Kestrel’i bir ters vekilin arkasına yerleştirerek uygulamanızı çalıştırabilirsiniz. Bu yöntem, sürüm ve yapılandırma üzerinde tam kontrol isteyen projeler için idealdir.

Self-contained dağıtım ne işe yarar?

Self-contained (kendi kendine yeten) dağıtım, uygulamanızı ihtiyaç duyduğu .NET çalışma zamanıyla birlikte tek pakette toplar. Böylece sunucuda ayrı bir .NET sürümü kurulu olmasa bile uygulamanız çalışır ve barındırma ortamındaki sürüm farklılıklarından etkilenmez.

.NET Projeniz İçin Güçlü Altyapı

İzmir’deki kendi veri merkezimizde, all-flash donanım, ücretsiz SSL, anti-DDoS koruması ve 7/24 destekle ASP.NET Core uygulamanızı güvenle barındırın.

Hosting Paketlerini İncele

Yazı oluşturuldu 4

Benzer yazılar

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.

Üste dön