“找不到路径的一部分”寻找一个UNC路径

问题描述:

试图从IIS服务器的另一台计算机*问网络共享。 代码工作正常,我的机器“找不到路径的一部分”寻找一个UNC路径

return File(path, "application/msexcel",trimmedPath);

上,但是当我尝试在服务器上,我得到这个

Could not find a part of the path 'r:\results\19262\19262-BA-T1\19262-BA-T1-19262-BA-T1-2_12_11_2014_32C_CST_8870.xlsx'.

如果我复制路径进入资源管理器中打开它的服务器上。 我使用Windows集成的安全 在IIS我已经设置物理路径凭据到我的用户ID

试图PROC监视器

ProcMon

+1

运行IIS应用程序池进程的用户是否有权访问该文件夹? – 2015-01-09 22:17:43

+0

我编辑了你的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 – 2015-01-10 01:00:23

这是因为在IIS应用程序池用户下运行的过程证书。默认情况下,该用户的权限非常有限。您可以尝试将其切换到NETWORK SERVICE用户。

除了上述,我觉得你需要通过UNC访问的路径,而不是映射驱动器。驱动器使用用户登录(或NET USE声明所提供的证书)的证书映射和IIS可能不使用这些凭据。

您必须使用用户名和密码模拟您的网站,该用户名和密码对您正在访问的网络资源拥有完全/适当的权限。

刚冒充你下面的代码网站书面web.config文件中的System.Web节,

</appSettings> 
<system.web> 
<identity impersonate="true" userName="Charan" password="Ghate"/> 

在这里,我假设“查兰”是具有完全访问权限对网络资源的用户名,你正在访问。 “Ghate”是用户的密码。我解决了这个问题;当我试图访问网络上的共享资源(文件)时。所以我认为这应该是有效的。