Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
IIS'te Production: Deploy, app_offline.htm, Kilitli Dosyalar, Application Initialization ve Angular
IIS'te çalışan uygulamanın DLL'leri kilitli; deploy'u app_offline.htm ile ya da .NET 7'den beri desteklenen enableShadowCopy ile yap ve bu ayarları sunucuda değil projedeki web.config'te tut, publish onları koruyor. Recycle ve overlapped recycle, Application Initialization ve idle timeout, IIS'te Data Protection, sub-application, URL Rewrite ile Angular ve IIS yerine AddWindowsService; IIS bu Mac'te çalıştırılmadı, web.config ve build çıktıları gerçek.
IIS'te ASP.NET Core: Hosting Bundle, ASP.NET Core Module, In-Process ve Out-of-Process
IIS'te ASP.NET Core'u ASP.NET Core Module çalıştırır; Hosting Bundle IIS'ten önce kurulursa onarılmalıdır, yoksa 500.19 alırsın ve uygulama tek satır çalışmaz. Publish'in ürettiği web.config'i, in-process ile out-of-process farkını, app pool ve ApplicationPoolIdentity izinlerini ve 500.30, 500.31, 500.38, 502.5 gibi hataların nereye baktırdığını anlatıyoruz; IIS bu Mac'te çalıştırılmadı, web.config çıktıları gerçek publish'lerden.