未在未经身份验证的ASP.NET页上应用CSS

时间:2020-03-05 18:51:10  来源:igfitidea点击:

在开发(正常运行)时,在用户通过身份验证(登录)之前,我们网站的页面不会使用正确的CSS。

因此,"登录"和"注销"表单看起来很糟,但是一旦进入站点,CSS就会再次起作用。

我猜这是某种身份验证问题?并没有进行太多研究,因为它只是在开发人员时才解决,不是一个大问题,但是很高兴知道如何解决它。

解决方案

回答

检查并确保CSS文件本身不在我们要保护的区域中。如果需要,我们可以通过web.config手动排除文件。

回答

我们是否可以尝试使用Fiddler或者HttpWatch之类的工具,并检查登录页面是否实际请求了.css文件。验证返回码为200。可能是由于开发框中的相对路径问题。

回答

要允许未经身份验证的用户查看.css文件(或者任何其他文件/目录),可以将一个location元素添加到指向.css文件的web.config文件中。

<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>