【问题标题】:ASP.NET MVC NESTED Virtual Directory for Content Files内容文件的 ASP.NET MVC NESTED 虚拟目录
【发布时间】:2012-06-04 23:05:25
【问题描述】:

我正在尝试在我的 ASP.NET MVC 3 网站中映射一个虚拟目录。虚拟目录仅包含图像文件,物理目录位于另一台服务器上。当我尝试通过 Web 浏览器访问此目录中的图像时,我收到 HTTP 500 错误:

Parser Error Message: An error occurred loading a configuration file: Failed to start monitoring changes to '<virtual directory path>' because access is denied.

[编辑]:重新启动 IIS 后,我看到它在错误消息的末尾添加了“访问被拒绝”。但是,该目录对其具有读取访问权限的“所有人”权限,但它仍然无法正常工作。我看到过详细说明同样错误的帖子,但权限设置解决方案对我不起作用。

为什么要寻找配置文件?我已经更新了 Global.asax 以忽略有问题的路由,并且在 IIS 6 中,我可以毫无问题地浏览位于虚拟目录中的文件。我已验证虚拟目录未设置为应用程序。此外,对目录的权限对所有人集都具有读取权限。我做错了什么?

[EDIT #2]:指向的虚拟目录是网络共享文件夹...这有什么区别吗?

[编辑#3]:我正在尝试做的 IIS 6 层次结构是:默认网站 -> OurSite(MVC 网站,它本身就是一个虚拟目录)-> 图像(我正在努力的虚拟目录和)。这是一个嵌套的虚拟目录,这肯定是有问题的。如果我将目录创建为默认网站而不是默认网站的直接子级 -> OurSite,它可以正常工作。

谢谢,

安迪

【问题讨论】:

    标签: asp.net-mvc iis virtual-directory


    【解决方案1】:

    阅读 Turnkey 的答案和您的 cmets,我只想指出,如果您的 AppPool 使用 NETWORK SERVICE 身份,那么您的远程服务器需要将 Web 服务器的机器/计算机帐户添加到共享文件夹和 NTFS 权限不是NETWORK SERVICE 帐户。
    如果您将NETWORK SERVICE 添加到共享文件夹和NTFS 权限,您只是添加本地机器NETWORK SERVICE 帐户而不是网络服务器NETWORK SERVICE帐户。我希望我说得通。
    每当您使用计算机的NETWORK SERVICE 帐户进行远程连接时,您实际上是在使用计算机的机器帐户,所以这就是您需要添加的内容。
    假设您的网络服务器名为 PRODSERVER,您需要将机器/计算机帐户 PRODSERVER$ 添加到远程共享文件夹的权限。
    希望对您有所帮助。

    【讨论】:

      【解决方案2】:

      确保运行应用程序池的身份在该虚拟文件夹上也具有执行和列出权限,因为它正在尝试监控它以进行缓存更改。

      http://support.microsoft.com/kb/316721/

      [编辑]此链接表明它可能是第二种情况,它没有对共享目录中的子文件夹的权限。

      http://support.microsoft.com/kb/317955

      ASPNET 帐户是否可以一直访问该树?

      【讨论】:

      • 感谢您的回复。不幸的是,这对我不起作用。该站点运行的应用程序池正在使用身份:“网络服务”,并且我已经在网站级别和虚拟目录级别为该特定用户添加了权限。您发送的链接说,如果“每个人”用户有权访问,那么您不需要添加应用程序池用户,但现在,两个用户都有访问权限,但仍然无法正常工作。
      • 看到另一个知识库文章暗示它可能在该共享驱动器的目录路径中更深。您可能会在子文件夹中看到哪些身份正在访问共享 OK。
      • 我已经确保共享文件夹的整个层次结构都具有授予 NETWORK SERVICE、IUSR_machinename 和 ASPNET 的权限,但仍然无法正常工作。
      • OK - 所以我创建的虚拟目录作为网站的子目录存在,其 ITSELF 是“默认网站”下的虚拟目录。如果我直接在“默认网站”下创建虚拟目录,那么它工作正常。为什么不能做嵌套虚拟目录?
      • 这是一个非常好的问题,特别是因为 VD 包含在它自己的 Web 文件夹中。我想知道它是否正确解决了路径。上面的错误信息中“虚拟目录路径”的内容被隐藏了,是否在实际错误信息中显示了正确的扩展路径?
      猜你喜欢
      • 2016-05-23
      • 2021-08-19
      • 2010-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-15
      • 1970-01-01
      相关资源
      最近更新 更多