淺析ASP.NET訪問權(quán)限
.aspx頁面form代碼:
- <form id="form1" runat="server">
- <div>
- <asp:Button ID="Button1" runat="server" Text="Button" OnClick=
"Button1_Click" /><asp:FileUpload ID="FileUpload1"- runat="server" />
- </div>
- </form>
Button1的Click事件代碼:
- this.FileUpload1.SaveAs(Server.MapPath("."));
出現(xiàn)如下錯誤:
“/linkupload”應(yīng)用程序中的服務(wù)器錯誤。
對路徑“D:\HL\上傳下載\linkupload”的訪問被拒絕。
說明: 執(zhí)行當(dāng)前 Web 請求期間,出現(xiàn)未處理的異常。請檢查堆棧跟蹤信息,以了解有關(guān)該錯誤以及代碼中導(dǎo)致錯誤的出處的詳細信息。
異常詳細信息: System.UnauthorizedAccessException: 對路徑“D:\HL\上傳下載\linkupload”的訪問被拒絕。
ASP.NET訪問權(quán)限未被授權(quán)所請求的資源。請考慮授予 ASP.NET 請求標識訪問此資源的權(quán)限。ASP.NET 有一個在應(yīng)用程序沒有模擬時使用的基進程標識(通常,在 IIS 5 上為 {MACHINE}\ASPNET,在 IIS 6 上為網(wǎng)絡(luò)服務(wù))。如果應(yīng)用程序正在通過 <identity impersonate="true"/> 模擬,則標識將為匿名用戶(通常為 IUSR_MACHINENAME)或經(jīng)過身份驗證的請求用戶。
要將 ASP.NET訪問權(quán)限授予某個文件,請在資源管理器中右擊該文件,選擇“屬性”,然后選擇“安全”選項卡。單擊“添加”添加適當(dāng)?shù)挠脩艋蚪M。突出顯示 ASP.NET 帳戶,選中所需ASP.NET訪問權(quán)限對應(yīng)的框。
源錯誤:
只有在調(diào)試模式下進行編譯時,生成此未處理異常的源代碼才會顯示出來。若要啟用此功能,請執(zhí)行以下步驟之一,然后請求 URL:
在產(chǎn)生錯誤的文件的頂部添加一條“Debug=true”指令。例如:
- <%@ Page Language="C#" Debug="true" %>
- 或:
- 2. 將以下的節(jié)添加到應(yīng)用程序的配置文件中:
- <configuration>
- <system.web>
- <compilation debug="true"/>
- </system.web>
- </configuration>
請注意,第二個步驟將使給定應(yīng)用程序中的所有文件在調(diào)試模式下進行編譯;***個步驟僅使該特定文件在調(diào)試模式下進行編譯。
重要事項: 以調(diào)試模式運行應(yīng)用程序一定會產(chǎn)生內(nèi)存/性能系統(tǒng)開銷。在部署到生產(chǎn)方案之前,應(yīng)確保應(yīng)用程序調(diào)試已禁用。以上介紹ASP.NET訪問權(quán)限。
【編輯推薦】