【问题标题】:ASP.NET Access to the path denied, on Web ServerASP.NET 对 Web 服务器上的路径的访问被拒绝
【发布时间】:2014-11-21 18:22:39
【问题描述】:

我遇到了一个问题,即当我在我的 Web 服务器上部署我的 asp.net 4.0 应用程序时,我无法写入 App_Data 文件夹。实际上它有一个 xml 文件,我正在尝试将一些信息写入其中。我收到以下错误。

Access to the path 'C:\HostingSpaces\hosterind\mydomain.com\wwwroot\App_Data\ErrorLog.xml' is denied.

在发布到 stackoverflow 之前,我尝试在每个角落搜索可能的解决方案,但我无法解决此问题。在互联网上搜索类似的问题(stackoverflow)我得出结论,我需要通过 IIS 处理它,因为它在互联网上引用的任何地方都可以通过 IIS 管理器授予 App_Data 文件夹的权限。由于无法访问您的网络托管服务器的 IIS 管理器,我想人们指的是我的本地 IIS 服务器。因此,我从以下位置复制了我在 Visual Studio 中开发的项目:C:\Users\DanComputer\Documents\Visual Studio 2010\WebSites\MyWebProject 并粘贴到 C:\inetpub\wwwroot 中。然后我通过选择 DefaultAppPool 作为应用程序池在 IIS 管理器中找到我的项目。我更改了我的 App_Data 文件夹权限以允许完全控制 IIS_IUSRS(DanComputer\IISUSRS)。然后我使用 ftp 软件将我的 App_Data 文件夹复制到我的网络托管空间,但它并没有解决我的问题。我尝试了很多事情,甚至更改了权限以允许所有人完全控制,但它没有用,我仍然遇到同样的错误。有什么帮助吗?

【问题讨论】:

  • 您是否有权访问服务器以运行控制台命令?
  • 我从来没有问过我的托管公司。实际上这是我开发的第一个应用程序,现在遇到了问题。我对 IIS 和相关的东西了解不多。我如何知道我的服务器是否允许运行控制台命令?我不确定托管公司是否允许这样做,但如果您对解决我的问题有一些想法,仍然欢迎

标签: asp.net .net iis iis-7.5


【解决方案1】:

您需要知道您的应用的应用程序池的身份是什么。您可以从 IIS 或控制台获取此信息。您的软管公司可能有一个可以为您提供该信息的控制面板。

然后您需要在应用程序池标识中授予帐户权限,名称将与您在 IIS 中看到的名称相同或至少非常相似:

因此,使用上面的示例,我必须授予本地服务或网络服务读取/写入我的 app_data 文件夹的权限。

【讨论】:

  • 知道我的托管公司 applicayio 池后,您能告诉我下一步该怎么做吗?
  • 谢谢,听起来合乎逻辑。我给我的托管公司发了一封电子邮件,让我知道他们的 IIS 默认应用程序池。希望这能解决我的问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-15
  • 2021-04-02
  • 1970-01-01
  • 2017-12-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多