尝试从IIS服务器访问另一台计算机上的网络共享。 代码在我的开发机器上运行良好
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中,我已将物理路径凭据设置为我的userID
尝试过Proc Monitor
答案 0 :(得分:2)
除此之外,我认为您需要通过UNC访问路径,而不是映射驱动器。使用登录用户的凭据(或NET USE语句中提供的凭据)映射驱动器,IIS可能不使用这些凭据。
答案 1 :(得分:0)
那是因为在IIS中,进程在应用程序池用户凭据下运行。默认情况下,用户具有非常有限的权限。您可以尝试将其切换到NETWORK SERVICE用户。
答案 2 :(得分:0)
您必须使用用户名和密码模拟您的网站,该用户名和密码对您正在访问的网络资源拥有完全/适当的权限。
只是冒充你的网站写下web.config文件的System.Web部分中的代码。
</appSettings>
<system.web>
<identity impersonate="true" userName="Charan" password="Ghate"/>
这里我假设用户名“Charan”拥有您正在访问的网络资源的完全访问权限。并且“Ghate”是用户的密码。我解决了这个问题;当我试图访问网络上的共享资源(文件)时。所以我认为这应该是可行的。