【问题标题】:how to map a path in remote server如何在远程服务器中映射路径
【发布时间】:2011-05-02 17:55:39
【问题描述】:

我必须在文件服务器中管理附件。所以我将文件服务器映射到本地e:驱动,并在我的程序中直接指向它。它在我的工作机器上运行良好,但报告在我放置代码的应用程序服务器中找不到路径。有谁知道如何在远程服务器中映射路径?这是一个 .net 项目,我使用 c#。提前致谢。

【问题讨论】:

    标签: .net path server.mappath


    【解决方案1】:

    驱动器映射基于每个用户。我的猜测是您在开发 ASP.NET 应用程序时使用的是内置的开发服务器。

    此服务器在您自己的帐户下运行,因此您可以看到与您的帐户关联的驱动器映射。但是,在 IIS 中运行时,它会在另一个用户下运行(很可能是运行 ASP.NET 应用程序的 ASP.NET 本地用户,除非另有说明)。

    也就是说,您应该使用 UNC 路径来查找文件,而不是依赖映射驱动器;这些名称将始终相同。

    即使您为 ASP.NET 用户设置了驱动器映射,如果您冒充该用户也会遇到问题,因此最好坚持使用 UNC 路径。

    【讨论】:

    • 当我使用 UNC 时,它会出现一条错误消息,指出“登录失败:未知用户名或密码错误”。你知道原因吗?
    • @Steven Zack:是的,这是因为 local ASP.NET 帐户无权访问网络资源。您应该设置网络资源的权限以允许 ASP.NET 用户访问该资源,或者(甚至更好)创建一个运行 ASP.NET 应用程序的网络用户(而不是默认)并为该用户分配访问权限.
    • 每个人都可以访问该文件夹。我必须对我的代码做些什么吗?
    • @Steven Zack:不,这是一个配置设置;查看web.config 文件的<impersonation> 标签。
    • @casperOne,抱歉,您能详细解释一下吗?我应该对 web.config 做什么?提前致谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 2013-11-09
    • 1970-01-01
    相关资源
    最近更新 更多