Dim filePath As String = "~/Images/FleaMarket/uploadedImages/" & User.Identity.Name.ToString & "/" & itemID & Path.GetExtension(fuImage.FileName)
MsgBox(filePath)
If fuImage.HasFile Then
If Directory.Exists(Server.MapPath("~/Images/FleaMarket/uploadedImages/" & User.Identity.Name.ToString & "/")) = False Then
Directory.CreateDirectory(Server.MapPath("~/Images/FleaMarket/uploadedImages/" & User.Identity.Name.ToString & "/"))
End If
'lblMessage.Text = ""
If checkFileType(fuImage.FileName) Then
fuImage.SaveAs(Server.MapPath("../Images/FleaMarket/uploadedImages/" & User.Identity.Name.ToString))
我收到错误“System.UnauthorizedAccessException:访问路径'D:\ TriceDealsII Updated \ 13-10-11 \ Tricedeals II(4)\ Images \ FleaMarket \ uploadedImages \ mitali2054'被拒绝”< /强>
为什么?
答案 0 :(得分:1)
在IIS中运行的ASP.NET应用程序使用分配给指定应用程序池的用户。对于每个应用程序池,将有一个Windows用户,它是Windows组“IIS_IUSRS”的一部分。由于此用户/组没有对Web应用程序(或任何其他目录)目录的写入/更改访问权限,因此您必须手动授予这些权限。
要实现此目的:在资源管理器中导航到指定路径,您希望在其中编写文件/数据,打开目录的安全页面,将AppPool用户或组“IIS_IUSRS”添加到列表中并选择写(或更改)权限。
注意:写入权限始终存在安全风险。因此,您应该尽可能地限制它。
答案 1 :(得分:0)
这可能是由您尝试访问的文件上的权限问题引起的。您可以尝试Procmon查看它是否会告诉您尝试访问该文件的帐户,然后向该帐户授予必要的权限。