2012-02-07 18 views
6

olarak değiştirdiğimde css veya js'yi hizmet dışı bırakmayı reddettim. Çok basit bir web uygulamasına sahibim (asp.net MVC3, .net 4, Visual Studio'nun IIS'sini değil) sunucu, 64 bit Windows 7). Uygulamamdaki uygulama havuzundaki ayarları değiştirdiğimde ve '32-Bit Uygulamaları Etkinleştir' seçeneğini False olarak ayarladığımda, uygulamamın görünümü görünür, ancak statik içeriğin (Content/Site.css veya Scripts/myScript.js) hiçbiri gösterilmez. yukarı. Bunun yerine, bu isteklere 500 durum kodu alıyorum.Neden IIS 7 'Enable 32-bit Applications' öğesini 'false'

HTTP Hatası 500.0 - Dahili Sunucu Hatası Dahili bir sunucu hatası oluştuğu için sayfa görüntülenemiyor.

Bu değeri değiştirmemin nedeni, 64 bit Oracle.DataAccess.dll dosyasını kullanmaya çalıştığım ve bu değerin True olarak ayarlanmış olması durumunda uygulama havuzunun WOW64 modunda çalışmasına ve dll'yi yanlış biçimde yüklemeye çalışır.

Bir süredir çevrimiçi arama yaptım ve bu konuda çok fazla bilgi bulamıyorum. Dosyalarda izinlerle oynamaya çalıştım, her tür bayrakla aspnet_regiis çalıştırmayı denedim. Fikirlerim tükendi. IIS, 64 bit modunda çalışırken neden bu statik içeriği sunmuyor?

cevap

4

IIS kurulumunuzda, 32 bitlik tek bir modülün yanlışlıkla yüklendiği olasıdır, bu da tüm web uygulamasının 64 bit modülünde çalışmasını engeller. Bu 500 hataların yaygın bir nedeni. Ben web.config'de system.webServer \ staticContent bir sorun vardı bu hata vardı zaman

Başarısız istek izleme,

http://www.iis.net/learn/troubleshoot/using-failed-request-tracing/troubleshooting-failed-requests-using-tracing-in-iis

+0

Ayrıca, tam olarak nelerin talep edildiğini görmek için kemancıyı kullanın. – RickAndMSFT

+0

Başarısız istek takibi kurdum ve 500 hatasını yakalamıyor gibi görünüyor. 400-550'yi yakalayacağım. Ben aslında 32 bitlik bir Oracle topluluğuna kavuşarak problemimin etrafında çalıştım. Öneriniz muhtemelen ne gördüğüme neden oluyor, ancak artık bunu ayıklamak için zamanım yok. Başarısız istek takibi hakkında bir şeyler öğrendim, teşekkürler. – Gerfboy

+0

Bağlantı bozuk, herhangi bir öneri var mı? –

1

Yorum yapmak için yeterli puanınız olmadığı için yorum yazmam gerekiyor.

Web sitenizdeki işleyici eşlemesini denetlemeyi denediniz mi? İşleyici Dönüşümler Altında

: StaticFile Handler hala kayıtlı olduğunu ve yol

Ayrıca etkin olduğunu kontrol * atanmış olup olmadığını kontrol edin.

+0

Benim StaticFileHandler hala kayıtlı ve etkinleştirilmiş ve * atanır. Burada zar yok. – Gerfboy

17

size görevin hangi modül hakkında daha fazla bilgi göstermek gerekir.

Sunucular arasındaki farktan dolayı, bir makinede belirli bir MIME türü için gerekliyse de, bu hatanın bir diğerine neden olmasına neden oldu.

Arıza güvenliği, gerekli olmadığında 500'den kaçınmak için web.config'te sahip olduğunuz her biri için bir yer içermelidir.

+2

Bu cevap benim için çalıştı. IIS 8'de varsayılan olarak .woff ve .mp4, web.config benim de mime türlerini bildirmeye çalışıyordu. Statik içerik mime türünü web.config dosyasından kaldırdım ve çalışmaya başladım. – Base33

+0

Aynı sorun vardı, çünkü web.config ve machine.config dosyasında mp4 için yinelenen tanımlar var! Teşekkürler! – KiNG

+0

Teşekkürler, bu cevap bana çok zaman kazandırdı! – user752746

3

Çift denetimli mime türleri doğru şekilde atanmış olabilir; bunun nedeni, yerel site web.config ve sunucunun kendisinde mimetiplerin iki kez girilmesi olabilir.

0

Windows güvenlik özellikli ve ananame erişimi kapalıyken bu sorunu kendim hallettim.

Durumumdaki çözüm, localhost sitesini yerel intranet sitelerime eklemek oldu. Visual Studio'nun adminstrator modunda çalıştırılması sorunu da temizleyebilir.

Internet Settings