事件代碼: 4006
事件訊息: 成員資格認證驗證失敗。
事件時間: 2006/11/9 下午 03:00:26
事件時間 (UTC): 2006/11/9 上午 07:00:26
事件 ID: 610b30f39f984e5caf8fd593d71db4c2
事件序列: 2 事件項目: 1 事件詳細資料代碼: 0
... (以下省略)
解決方法是將web.config裡的application name,改成跟ASPNETDB.mdf裡的aspnet_Applications的ApplicationName、LoweredApplicationName內容一致....
但是這種方式我試過沒辦法解決....>< 後來才發現是權限的問題,發佈到其它台的電腦後,針對ASPNETDB.mdf要發放權限讓User這個帳戶可以修改及寫入才行.... 以下是我的作法:
- 發佈網站
- copy 到另一台電腦,假設目錄為c:\MyWeb\WebSite
- 將c:\MyWeb\WebSite1設為虛擬目錄WebSite1,開放可以寫入...並將「允許匿名存取」的功能打開
- 到c:\MyWeb\WebSite1\App_Data\ASPNETdB.mdf的安全性設定,把User這個帳戶授權可以修改及寫入
如此一來就可以使用Membership的Login Controls來登入了....
另外如果有出現以下錯誤訊息:
無法開啟使用者預設資料庫。登入失敗。 使用者
則是ASPNET這個帳號無法存取mdf檔,請將ASPNETDB.mdf的存取權限,加入SYSTEM這個群組,並設定可以修改及寫入....
以上是針對由VS.NET 2005產生的預設ASPNET.mdf發行到其它電腦所遇到的問題...
原則上還是建議不要使用預設的ASPNETDB.mdf
1 則留言:
Thank you for your info.
張貼留言