我有一个ASP.Net网站和一个C#控制台应用程序(都是在VS2010中开发的)。两者都将文件上传到我们的Web服务器(Windows Server 2003 / IIS 6.0)。然后,登录该网站的用户可以查看和下载这些文件。 这在网站上运行良好。但是当我尝试下载控制台应用程序上传的文件时,我收到错误:
UnauthorizedAccessException
Access to the path 'C:\xxx\yyy\zzz\abcd_20120309.pdf' is denied.
我已经手动为该文件夹的NETWORK SERVICE帐户提供了“完全控制”。
为什么Asp.Net代码无法访问控制台应用程序创建的文件夹?
有什么想法吗? 谢谢!
答案 0 :(得分:1)
您需要提供对IIS_IUSRS文件夹的访问权限(或此行的内容)。
您需要访问IIS。
包括对所有人的访问权限,不包括此用户。所以必须直接完成。
网络服务是不够的。
如果IIS_IUSRS没有出现在列表中,请搜索它。
答案 1 :(得分:0)
不知道在这种情况下是否重要,但我过去看过的一件事是:
应用程序首先将文件保存在临时文件夹中,然后将其移动到目标文件夹。
有时,不知道确切的规则,文件访问权限跟随移动中的文件。即使在目标文件夹中,文件最终也会获得临时文件夹的访问权限。
检查文件的访问权限,看它是否与目标文件夹不同。