2009-05-01 72 views
7

我有這個在我的web.config文件:授權問題 - 匿名用戶無法訪問jpeg或.CSS

<authentication mode="Forms"> 
     <forms loginUrl="login.aspx" defaultUrl="Venues.aspx" /> 
    </authentication> 
    <authorization> 
     <deny users="?" /> 
     <allow users="*" /> 
</authorization> 

我只希望允許身份驗證的用戶我的網頁。問題是,我第一次進入登錄頁面時,頁面上沒有任何圖像或樣式。我認爲這是因爲我拒絕訪問.jpeg.css文件。 我想我可以在IIS中解決這個問題,但我只是在Dev。我只有VS 2008,沒有IIS。

我可以在web.config中允許匿名用戶訪問imgs目錄嗎?

回答

17

你可以允許某些目錄(直屬<configuration>):

<location path="images"> 
    <system.web> 
     <authorization> 
      <allow users="?"/> 
     </authorization> 
    </system.web> 
</location> 

你也可能需要包括WebResource.axd的

<location path="WebResource.axd"> 
    <system.web> 
     <authorization> 
      <allow users="?"/> 
     </authorization> 
    </system.web> 
</location> 
2

我認爲這是Visual Studio中的一個已知錯誤 - 當您不使用IIS時,visual studio錯誤地阻止登錄頁面上的CSS文件。

在這裏看到:
blog post from tomtech999

當您在IIS中運行它應該沒問題。

+0

多數民衆贊成它!謝謝! – Txugo 2009-05-01 14:14:09

0

同樣,如果你想微軟的ReportViewer控件上下工夫您的網頁,您需要添加:

<location path="Reserved.ReportViewerWebControl.axd"> 
    <system.web> 
    <authorization> 
     <allow users="*"/> 
    </authorization> 
    </system.web> 
</location> 

試圖讓2010版的報表查看器工作時,這對我來說是一個問題。 (幸運的是,它只花了70億年來揭露問題的根源。)