Server.MapPath C#在本地工作,但不能从服务器工作



Server.MapPath有一个很大的问题,因为我无法让它从服务器解析,并且不确定如何测试它试图做什么。

在本地,它以各种不同的方式工作正常,但是当我把它放到服务器上时,每个人都失败了。

string filename = "TestLog.txt";
string path = Path.Combine(Server.MapPath("~/Content/"), filename);
Debug.WriteLine(path)
using (System.IO.StreamWriter writer = new System.IO.StreamWriter(path, true))
{
    writer.WriteLine(message);
    writer.Close();
}

我已经尝试在路径中使用/内容并将额外的/添加到文件名中。尝试过有和没有蒂尔达。它们都在本地正确解析路径,但不在服务器上解析。

作为记录,我尝试访问的路径是

本地: C:\Users\username\Documents\MyWebSite\Web\Content\TestLog.txt服务器: D:\Web\MyWebSite\Content\TestLog.txt

由于MyWebSite\Web是本地站点的根,MyWebSite是服务器上的根,因此 mywebsite.com/content/TestLog.txt

任何帮助都非常感谢。

这将是一个权限问题。

当您在本地运行时(在卡西尼网络服务器下...Visual Studio 的一部分(,您已获得许可。

在 IIS 中托管时,可能不会。

授予对该文件夹的"写入"权限 - 完全取决于您使用的 IIS 版本如何执行此操作 - 可能通过应用程序池。

如何授予 ASP.NET 写入 Windows 7 中的文件夹的权限?

Web 应用程序的 IIS7 文件夹权限

相关内容

  • 没有找到相关文章

最新更新