2011-02-08 115 views
0

我有一個很奇怪的問題。 (fyi - 我使用表單身份驗證並手動創建非持久性驗證票證/ cookie。)我的登錄頁面已應用圖像和CSS。當我在本地運行我的站點(開始不調試)時,它會顯示我的登錄頁面,但是沒有顯示我的圖像,而且我的css也沒有鏈接。我保證正確引用,我保證。

但是,當我在VS的Design視圖中查看此頁面時,它顯示圖像和CSS。另外,如果我運行它並登錄,然後單擊後退按鈕,所有內容都會顯示出來(圖像/ css)!但是,如果我註銷(將我重定向到登錄頁面),我的圖像/ css不在那裏!它就好像頁面不能引用自己的資源,除非用戶登錄。WTH。我只在本地VS服務器上遇到這個問題;當我把它放在活動服務器(woot)上時它似乎工作正常。任何人都知道這是爲什麼發生?

這裏是請求圖像/ CSS中我的登錄頁面的部分:登錄頁面無法在未登錄的情況下引用其他文件

... 
<head runat="server"> 
    <link rel="stylesheet" type="text/css" href="styles/BodyLayout.css" /> 
    <title>Optoma USA - Login</title> 
</head> 
<body> 
<center> 
    <div style="text-align:left; width:990px; height:780px; background-color:White;"> 
    <div id="divBody"> 
    <form id="form1" runat="server" target="_self"> 
    <center> 
     <div style="height:100px; width:600px; text-align:center;"> 
     <img src="images/Optoma_Logo.gif" alt="Unable to display image." /> 
     </div> 
    </center> 
... 

也,這裏是在web.config中我的授權碼:

<authentication mode="Forms"> 
      <forms loginUrl="~/index.aspx" name="adAuthCookie" path="/"> 
      </forms> 
     </authentication> 
     <!--<authorization>:--> 
     <authorization> 
      <!-- <deny>: will deny all users and redirect to login page, 
      unless they are properly authenticated--> 
      <deny users="?"/> 
      <!--<allow>: might be configured later. probably will not need--> 
      <allow users="*"/> 
     </authorization> 
+1

聽起來你正在提出對images/css的請求,服務器看到沒有人登錄,所以這些請求被重定向到登錄頁面。您需要將所需的圖像/ css放在您的應用程序的一部分中,而不需要進行身份驗證。 – 2011-02-08 01:34:01

回答

4

我覺得你的web.config包含

<authorization> 
    <deny users="?"/> 
</authorization> 

這意味着用戶不能比加載登錄頁面其他任何東西 - 但不是它的圖片,樣式等,您可以合併到下列的web.config使例如:

<configuration> 
    <location path="images"> 
    <system.web> 
     <authorization> 
     <allow users="*"/> 
     </authorization> 
    </system.web> 
    </location> 
</configuration> 
+0

我在我的編輯中發佈了我的web.config部分。我認爲你正在做些事情..審查我的編輯,看看有什麼? – 2011-02-08 01:47:21

相關問題