2008-09-11 20 views
13

Gelişme sırasında (iyi çalışıyor) web sitemizin sayfaları, kullanıcı doğrulanana (oturum açana kadar) doğru CSS'yi almıyor.CSS kimliği doğrulanmamış ASP.NET sayfasında uygulanmadı

Oturum açma ve oturum kapatma formları kötü görünüyor, ancak sitenin içine bir kez CSS yeniden çalışıyor.

Sanırım bir çeşit kimlik doğrulama sorunu mu var? Gerçekten çok fazla bakmadım çünkü sadece dev üzerinde çalışırken büyük bir sorun değil, ama nasıl düzeltileceğini bilmek güzel olurdu.

cevap

14

CSS dosyasının kendinizin güvenceye aldığınız bir alanda olmadığından emin olun. Gerekirse dosyayı web.config üzerinden el ile dışlayabilirsiniz.

+4

Manuel bölümüne aşağıdaki ekleyerek hariç: JamesSugrue

+0

Bu iyi. O halde üretim ortamınızda nasıl çalışıyor? Bu bölüm dev web.config –

+0

içinde bu aynı sorun varsa orada aynı sorunu olması gerekir Ben bu tam olarak aynı sorunu var - giriş sayfası üzerinde dev ve iyi üretim üzerinde unstyled. web.config, bağlantı dizeleri ve hata ayıklama ayarları haricinde tamamen aynıdır. Bu çözüm benim için problemi çözmedi. –

3

Fiddler veya HttpWatch gibi bir aracı kullanmayı deneyebilir ve bir istekte aslında .css dosyasının giriş sayfasından çıkıp çıkmadığını kontrol edebilirsiniz. Dönüş kodlarının 200 olduğunu doğrulayın. Dev kutunuzdaki göreli yol sorunu nedeniyle olabilir.

17

Kimliği doğrulanmamış bir kullanıcının .css dosyalarınızı (veya başka bir dosya/dizini) görmesine izin vermek için, web.config dosyasına .css dosyasına işaret eden bir konum öğesi ekleyebilirsiniz.

<configuration> 
    <system.web> 
     // system.web configuration settings. 
    </system.web> 
    <location path="App_Themes/Default/YourFile.css"> 
     <system.web> 
     <authorization> 
      <allow users="*"/> 
     </authorization> 
     </system.web> 
    </location> 
</configuration> 
8

Sadece bu soruna kendim girdim ve el ile hiçbir fark yaratmadan ekleme. IIS_IUSRS klasörüne erişim verdiğimi ve uygulama havuzumun dosyalara erişemediğini, ancak IIS'nin IUSR hesabını anonim erişim için kullandığını buldum.

düzeltmek için, ben IIS Yöneticisi açıldı -> IIS: .. düzenleyin (veya sağ tıklama) -> Şimdi 'Uygulama havuzu kimliği'

seçin: Kimlik Doğrulama - -> Seç 'Anonim kimlik doğrulaması'> Eylemler tıklayın anonim erişim, doğru dosya izinlerine sahip olan IIS_IUSRS kullanır.

+0

Benim için çalışıyor! Çok teşekkür ederim :) –

İlgili konular