Etiketler

, , , , , , , ,


IIS 7.5 | Managed Pipeline Mode | Integrated/Clasic

Özellikle sunucularınız Windows Server 2008 / R2 işletim sistemine sahip ve üzerlerinde IIS 7.0 / 7.5 kurulu ise, geliştirici makinelerinide benzer bir platforma taşımanız tavsiye edilir. Çünkü geliştirici ortamı ile uygulamalarınızı yayınladığınız ortamların  bir birine yakın olması, local testlerinizde yayın (production) ortamının sonuçlarını simüle etmenize ve gerçekçi tespitlerde bulunmanızı sağlayacaktır.

Eğer sunucularınız işletim  sistemi Windows Server 2008 ise, geliştirci bilgisayarlarını da Windows XP‘den Windows 7‘ye geçirme zamanızı artık çoktan gelmiştir. Çünkü Windows XP, IIS 6.0 dan daha üst bir IIS versiyonunu kullanamazsınız. Windows 7 ile beraber IIS 7.0 yada IIS 7.5 geçip, sunucularınızla benzer bir sunum ortamını geliştirici makinelerinde sağlayabilirsiniz.

Bu tarz bir geçiş sonrasında, değişen ortam neticesinde, uygulamarınızı local IIS’iniz üzerinde yayınlarken bazı problemlerle karşı karşıya gelmeniz muhtemeldir. Bunlardan bir tanesi de sıkça karşılaşılan;

An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.

HTTP Error 500.22 – Internal Server Error
An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.

Çünkü özellikle ASP.Net 2.0 uygulamaları IIS7.0 (7.5) üzerinde varsayılan olarak  integrated modda çalışırlar. Çünkü IIS 7.0 ile beraber hem IIS mimarisinde hem de ASP.NET’in o mimarideki yerinde köklü değişiklikler olmuştur. En başta IIS 7.0 ile birlikte ASP.NET, önceki IIS sürümlerinin aksine bir IIS ISAPI uzantısı olmaktan çıkmıştır. Detayları aşağıdaki şemadan ve http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis/ sitesinden okuyabilirsiniz.

IIS 6.0

iis 6.0 Mimarisi

IIS 7.0

iis7.0


Gelelim “An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.” hatasının çözümüne. Bunun için aşağıdaki yöntemleri izleyebilirsiniz.

1. web.config dosyasında aşağıdaki değişikliği yapmak.

<system.webServer>
<validation validateIntegratedModeConfiguration=”false” />
</system.webServer>

2. Sitenizin çalıştığını “Application Pool” ayarlarınında çalışma modunu

Integrated ==> Clasic

yapmak. (Bunun için Run ==>  inetmgr ile IIS 7.0 yönetim bölümüne girebilirsiniz.)

inetmgr

Change Managed Pipeline Mode to Integrated from Classic

iis7.5-ManagedPipeLineMode