500 Internal Server Error Nedir?
Bu hata, genellikle ASP.NET Core uygulamalarında şunlardan kaynaklanabilir:
- Yanlış yapılandırılmış bağımlılıklar
- Hatalı konfigürasyonlar
- Veritabanı bağlantı sorunları
- Çalışmayan middleware veya controller hataları
- Kod içinde yapılan küçük ama etkili hatalar
500 Hatası ile Karşılaşırsanız Ne Yapmalısınız?
# 1. Logları Kontrol Edin
Aşağıdaki gibi bir kod kullanarak logları daha detaylı şekilde inceleyebilirsiniz:
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddLogging(builder =>
{
builder.AddConsole();
builder.AddDebug();
});
}
public void Configure(IApplicationBuilder app, ILogger logger)
{
app.Use(async (context, next) =>
{
logger.LogInformation("Request started...");
await next();
logger.LogInformation("Request ended...");
});
}
}
Bu loglar, hata oluştuğunda size gerekli bilgileri sağlayacaktır.
# 2. Web Sunucusu Konfigürasyonunu Gözden Geçirin
# 3. Veritabanı Bağlantılarını Kontrol Edin
İşte basit bir veritabanı bağlantı örneği:
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
}
}
Bağlantı hataları genellikle bu tür hatalara yol açar. Sunucunuzda SQL Server çalıştığından ve doğru bağlantı dizesi kullandığınızdan emin olun.
# 4. Middleware ve Controller Hatalarını Gözden Geçirin
Bir örnek üzerinden gösterelim:
public class HomeController : Controller
{
public IActionResult Index()
{
// Bu kodda yanlış bir işlem olursa 500 hatası alınabilir
var item = _repository.GetItemById(id);
return View(item);
}
}
Kodunuzu bu şekilde dikkatlice gözden geçirin ve null reference gibi hataları önceden engelleyin.
Sonuç Olarak…
Bu yazıyı okuduktan sonra, artık 500 hatası gördüğünüzde panik yapmadan doğru adımları atabileceksiniz.
---