2016-08-27 16 views
8

Geliştirme makinemde, 32 bit kipinde çalışacak bir IIS Uygulama havuzu ayarladığımda, başlatılan herhangi bir Web uygulaması basitçe asılacak. Tarayıcıda erişildiğinde, uygulama 503 hatası almadan önce yaklaşık 5-10 saniye boyunca 'askıda kalıyor'. Uygulama için Uygulama Havuzu bu noktada durdurulacak ve açık bir şekilde yeniden başlatılmalıdır.IIS Uygulama Havuzları, Windows 10'da 32 Bit Modunda başarısız oluyor

64 bit (varsayılan) modda her şey yolunda, ancak havuz 32 bit'e geçtiğinde, yeni ve boş bir Web sitesinde statik sayfalarda bile askıda kalıyor.

Aynı uygulamalar canlı sunucuma 32 bit modda yayınlandığında iyi çalışır, bu nedenle bir çeşit yapılandırma sorunu ortaya çıkar. Başarısız İstek İzleme'yi etkinleştirdim, ancak günlüklerde hiçbir şey gösterilmiyor.

Bazı eski COM bağımlılıkları nedeniyle 32 bit çalıştırmak zorunda olan birkaç uygulama var, ancak sunucunun çalışmasını sağlayamıyorum.

Bu soruna neden olabilecek herhangi bir fikir var mı?

+0

Tam olarak ne beklediğini söylerseniz, tarayıcı sonsuz olarak döner veya sayfa yavaşlar mı? –

+0

İki şey: Etkinlik kaydını kontrol ettiniz mi? Başvurunuzda 64bit olan herhangi bir montaj var mı? –

+0

Belki 32 bit COM'lar kayıtlı değil veya çalışmıyor mu? Ayrıca, Windows'unuzun bozuk olmadığını kontrol ettiniz, cmd komutuyla => sfc/scannow? – Cerveser

cevap

9

Tamam IIS modül listesinde bir bitness değeri olmadan kayıtlı 64 bit sürümü olan AspNetCore Modülü olan sorunu buldum.

Bu sorun, modülün bir bitness64 (64 bit sürümü için) belirtilmeksizin yüklenmesi dışında AspNetCoreModule'a özgü değildir. Bitness değeri olmadan modül 32 bit modunda bile yüklenir ve sunucunun çökmesine neden olur.

Ek hata noktası, Windows güncellendiğinde benzer nedenlerle askıya alınan IIS Yeniden Yazım Modülüdür. Her Windows güncellemesi, Rewrite Modülü benim için IIS'yi (32 ve 64 bit) kırıyor. Bu ilk başarısızlık ve olay günlüğü girdisiydi. Rewrite modülünü yeniden yükledikten sonra, olay günlüğünde AspNetCoreModule hataları görüntüleniyor. https://weblog.west-wind.com/posts/2015/jul/05/windows-10-upgrade-and-iis-503-errors

ben Applicationhost.config yılında BITNESS değiştirdi AspNetCore modülünün BITNESS düzeltmek için:: Ben fazla bilgiye blogumda bu konu var

<add name="AspNetCoreModule" image="%SystemRoot%\system32\inetsrv\aspnetcore.dll" preCondition="bitness64" /> 

Bildirimi tüm bu 32 için gerekli idi precondition=bitness64 bit AppPools yeniden çalışır, çünkü modülün 32 bit işlemlere yüklenmesini önler. AspNet Server çalışma zamanının yeniden yüklenmesi de bunu düzeltebilir, ancak bunu doğrulamadım.

Uygulama başlatıldığında 503 hata oluştuğunda, bunlar genellikle Uygulama Havuzu ile ilişkilidir ve FREB günlüklerinde görünmez. EventLog daha fazla bilgiye sahip ve bu durumda, önce Rewrite Modülü'nde, daha sonra AspNet Core Modülünde işaret edildi.

+0

Tam olarak aynı problem ve semptomları vardı, Hem AspNetCore hem de Rewrite'nin bitliği yok. Olay günlüğüne bakarak öğrendim. Teşekkürler Rick! –

+0

Burada aynı sorun var ama olay günlüğü sadece eksik bir modülle ilgili bir hata içeriyordu ama modülü isimlendirmedi. Applicationhost.config içindeki globalModules bölümünü ve syswow64/inetsrv'de listelenen dlls'nin varlığını kontrol ederek, aspnetcore.dll dosyasının eksik olduğunu tespit ettim. AspNetCore'un manuel olarak kurulduğu ve VS tarafından kurulmadığı başka bir bilgisayara baktım. O PC'de syswow64/inetsrv içinde bir aspnetcore.dll vardı. Bu dll'yi PC'ime kopyaladım ve sorun giderildi. – NicolasR

İlgili konular