2012-02-03 180 views
1

我在localhost上托管一个网站,需要使用FileUploadControl将图像文件上载到另一台名为ImageServer的服务器。在远程服务器上为文件夹写入权限

if (FileUploadControl.HasFile) 
    { 
     try 
     { 
      string filename = Path.GetFileName(FileUploadControl.FileName); 
      FileUploadControl.SaveAs(@"\\ImageServer\" + filename); 
     } 
     catch (Exception ex) 
     { 
      throw; 
     } 
    } 

但是当我尝试提交图像时,我立即遇到此权限错误。

异常详细信息:System.UnauthorizedAccessException:访问路径'\ ImageServer \ xxx.jpg'被拒绝。

ASP.NET未被授权访问请求的资源。考虑 将对资源的访问权限授予ASP.NET请求 标识。 ASP.NET具有基本进程标识(通常在IIS 5上为 {MACHINE} \ ASPNET或在IIS 6上为网络服务),如果应用程序未模拟 ,则使用该标识。如果应用程序是 模拟通过,身份将是 匿名用户(通常IUSR_MACHINENAME)或验证 请求用户。要授予对文件的ASP.NET访问权,请在资源管理器中右键单击文件 ,选择“属性”并选择安全选项卡。点击 “添加”添加适当的用户或组。突出显示ASP.NET 帐户,然后选中所需访问权限的复选框。

我查看了文件夹安全选项卡,网络服务,IUSR,IIS AppPool \ Image和Everyone都被授予完全控制权。还有什么可能会丢失?我不确定我应该给ImageServer上的图像文件夹授予我的本地主机写入文件的权限。

P/S:使用IIS 7.5

手动复制文件通过Windows资源管理器\\ ImageServer \两个服务器的工作原理虽然

+0

检查该用户文件夹的写入权限... – Madhu 2012-02-03 06:57:55

回答

0

主要的窍门是创造,其指向\\ ImageServer虚拟目录\ 。

我找到一篇文章here。虽然是关于IIS 6的,但我认为在IIS 7上工作也不会有问题。