【问题标题】:Read/write files in shared drive from web application hosted on iis从 iis 上托管的 Web 应用程序读取/写入共享驱动器中的文件
【发布时间】:2018-04-05 05:50:25
【问题描述】:

我们在同一个域中有两台服务器。在一台服务器(SERVER1)上,我们有文件夹“C:\AppFiles\Production\Inbound”并将 AppFiles 文件夹作为驱动器(AppFiles (O:))共享到另一台服务器(SERVER2),我们可以手动将文件放置在共享驱动器中(O:\Production\Inbound) 在 SERVER2 上。但是我们想从托管在 SERVER2 上的 mvc Web 应用程序读取/写入共享驱动器 (O:\Production\Inbound) 中的文件。

尝试在共享驱动器中读/写时,我们在提供的代码中遇到以下错误 (O:\Production\

 public void Writefile()
 {
  System.IO.File.WriteAllText(Path.Combine(@"O:\Production\Inbound", "testlog.txt"), "test test, text");
 }

错误:

找不到路径“O:\Production\Inbound\testlog.txt”的一部分。

请建议我如何从 iis 上托管的应用程序读取/写入共享驱动器中的文件。

【问题讨论】:

  • 网络驱动器是每个 Windows 用户的。可以为您登录的用户设置网络驱动器,但您的 IIS 应用程序池可能在不同的用户名下运行。
  • 我的应用程序池在默认身份和身份设置为“ApplicationPoolIdentity”上运行。是否可以为iis默认用户共享驱动器。
  • IIS 根本不支持映射的驱动器。使用 UNC 路径。

标签: c# iis


【解决方案1】:

IIS 不支持映射驱动器,您可以使用 UNC 路径。尝试将路径更改为以下内容:

\\SERVER1\C$\AppFiles\Production\Inbound

如果两台服务器都在同一个网络上,并且您可以从服务器 2 访问上述链接,那么它应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-30
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 1970-01-01
    • 2019-05-15
    • 1970-01-01
    相关资源
    最近更新 更多