2010-02-27 35 views
1

這裏是web.config;使用web.config進行身份驗證。總是在開發工作,從不在生活

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <system.web> 
    <customErrors mode="Off"> 
    </customErrors> 
    <authentication mode="Forms"> 
     <forms name=".ASPXAUTH" loginUrl="login.aspx" protection="All" timeout="999999"> 
     <credentials passwordFormat="MD5"> 
      <user name="admin" password="21232F297A57A5A743894A0E4A801FC3" /> 
     </credentials> 
     </forms> 
    </authentication> 
    <authorization> 
     <allow users="?" /> 
     <allow users="*" /> 
    </authorization> 
    <trace enabled="true" localOnly="false" /> 
    </system.web> 
    <location path="administration"> 
    <system.web> 
     <authorization> 
     <allow users="admin" /> 
     <deny users="*" /> 
     </authorization> 
    </system.web> 
    </location> 
</configuration> 

當我在我的visual studio 2008 dev服務器上運行它時,它運行良好並且運行良好。當我發佈到IIS我想在網站上訪問任何頁面時,總是得到HTTP 403禁止錯誤

有我的網站內1個文件夾應該登錄保護所謂的「管理」

請能有人指出我哪裏錯了!我很沮喪:0)

謝謝!

回答

0

的解決辦法是配置在IIS

屬性>目錄安全性>編輯>認證方法>取消選中「集成Windows身份驗證」

後此配置一切現在工作的罰款。

1

我有類似的問題,我的情況可能會與您的情況不同,但我通過使用Fiddler並檢查身份驗證Cookie來解決問題,以查看它是否傳遞給客戶端。我的問題是在Vista上運行VS 2008,它需要管理員權限。當我在本地服務器上測試時,我以用戶登錄狀態運行,並且該用戶不是管理員,因此我正在處理兩個Cookie。另外我錯誤地設置了身份驗證路徑。希望這可以幫助。