Son gözden geçirme: Eylül 2026 · Windows Server 2019/2022 ve IIS 10 resmi dokümanına göre
Hızlı çözüm
ASP Net Core hata detayları yayına koyamıyorum sorununun en sık nedeni, IIS’in .NET Core uygulamasını çalıştırabilmesi için gereken ASP.NET Core Hosting Bundle‘ın sunucuda kurulu olmaması ya da uygulama havuzunun No Managed Code yerine yanlış ayarlı kalmasıdır; web.config içinde stdout günlüğünü açıp gerçek hata satırını okuduğunuzda çözüm netleşir.
dotnet --list-runtimes ile doğrulayın.web.config‘te stdout günlüğünü geçici açıp tam hata metnini okuyun.IIS_IUSRS okuma izni verildiğini kontrol edin.| Panel | IIS Yöneticisi (VDS) / Plesk (Windows Hosting) |
|---|---|
| Sistem | Windows Server 2019 / 2022, IIS 10 |
| Yetki | Administrator (VDS) ya da Plesk hesabı (Windows Hosting) |
| Narhost ürünü | Windows Hosting |
Başlamadan önce
dotnet publish çıktınız hazır ve kendi makinenizde test edilmiş olmalı.
ASP.NET Core uygulamaları IIS’in klasik .NET çalışma modelini kullanmaz; kendi içinde çalışan bir Kestrel sunucusuyla ayakta durur ve IIS yalnızca isteği bu sunucuya ileten bir ters vekil (reverse proxy) görevi görür. Sunucuya ASP.NET Core Hosting Bundle kurulmamışsa ya da uygulama havuzu klasik .NET CLR bekleyecek şekilde ayarlıysa IIS isteği Kestrel’e iletemez ve 500.19, 500.30 ya da 502.5 gibi hatalar döner.
Narhost Windows Hosting (Plesk) paketinde ASP.NET Core desteği hazır gelir; bu paketteki hata genelde yayın dosyalarının eksik kopyalanmasından ya da yanlış .NET sürümünden kaynaklanır. VDS Windows Server’da ise sunucunun işletim sistemi ve IIS yapılandırması sizin sorumluluğunuzdadır. ASP.NET ve .NET Core’un kavramsal farkını merak ediyorsanız blogdaki ASP.NET ve .NET Core Nasıl Çalışır yazısına bakabilirsiniz; bu kart doğrudan yayın hatasının çözümünü anlatır.
dotnet --list-runtimes
Beklenen sonuç: listede Microsoft.AspNetCore.App satırı görünür; hiç satır yoksa Hosting Bundle kurulu değildir.
iisreset
Beklenen sonuç: komut hata vermeden “Internet services successfully restarted” mesajını verir.
Dikkat
Bu alan yanlış ayarlıysa IIS isteği hiçbir zaman Kestrel’e iletemez; hata mesajı genelde 500.19 ya da 500.30 olarak görünür.
Beklenen sonuç: uygulama havuzu ayarı kaydedildikten sonra site yeniden başlar.
stdout günlüğünü açıp gerçek hatayı okuyun.web.config‘te stdout LogEnabled="true" yapın, siteyi tekrar açıp oluşan log dosyasını inceleyin.
Beklenen sonuç: log dosyasında eksik bağımlılık, yanlış giriş noktası ya da izin hatası gibi asıl neden yazılı görünür.
IIS_IUSRS kullanıcı grubunun okuma, gerekiyorsa yazma iznine sahip olduğunu kontrol edin.
Beklenen sonuç: izin eksikse eklendikten sonra “Access Denied” hatası kaybolur.
Microsoft’un resmi dokümanına göre Hosting Bundle, .NET çalışma zamanını, ASP.NET Core IIS modülünü ve IIS ile ortak çalışma için gereken diğer bileşenleri tek pakette kurar.
Microsoft’un sorun giderme dokümanına göre 500.30 hatasının en sık nedeni uygulamanın başlangıçta fırlattığı bir istisna, 502.5 hatasının nedeni ise Hosting Bundle’ın hiç kurulmamış olmasıdır.
Sonuç
Siteyi tarayıcıdan açtığınızda uygulamanın karşılama sayfasının hatasız geldiğini görüyorsanız yayın hatası çözülmüş demektir. stdout günlüğünde yeni hata satırı oluşmaması da doğrulamayı destekler.
stdout günlüğü hiç oluşmuyor. Uygulama havuzu kimliğinin site klasörüne yazma izni olmayabilir; klasör izinlerini tekrar kontrol edin.Narhost desteği
Talebe şunları ekleyin: alan adınız ya da sunucu IP’niz, aldığınız tam hata kodu (ör. 500.30, 502.5), stdout günlüğünde gördüğünüz satır ve denediğiniz adımlar.
Sonraki adımlar
web.config‘teki stdout günlüğü; açık değilse geçici olarak açıp oluşan log dosyasındaki gerçek hata satırını okuyun.
500.19 genelde uygulama havuzu ya da modül yapılandırma hatasını, 500.30 ise uygulamanın başlarken fırlattığı bir istisnayı gösterir.
Windows Hosting (Plesk) paketinde ASP.NET Core desteği hazır gelir; dosya ve izin kontrolü dışında kalan sunucu düzeyi ayarlar için destek talebi açabilirsiniz.
Bu makale sorununuzu çözdü mü?
Geri bildiriminiz için teşekkürler.
Çözemediniz mi?
Teknik ekibimiz sunucu tarafındaki ayarları sizin için kontrol edebilir. Destek talebinizde alan adınızı ve aldığınız hata metnini paylaşmanız süreci hızlandırır.