代码之家  ›  专栏  ›  技术社区  ›  John Rasch

可以从项目文件夹运行ASP.NET MVC应用程序吗?

  •  3
  • John Rasch  · 技术社区  · 15 年前

    在IIs5.1中,我设置了一个指向我的ASP.NET MVC项目目录的网站,当我在构建项目后尝试访问它时,会出现一个“服务不可用”错误。似乎我必须将站点发布到一个单独的目录,并将IIS指向已发布的版本以使其正常工作。

    我已经试过了” aspnet_regiis 但这并没有解决问题。我还设置了通配符映射,以便通过ASP.NET管道发送所有请求。

    我不知道为什么要发布这些文件才能查看它们。发布的版本似乎只删除不必要的文件,但发布的文件似乎与实际项目目录中的文件相同。

    您是否必须将ASP.NET MVC网站发布到其他目录,以便IIS为其提供服务?

    理想情况下,我想设置它,这样我所要做的就是建立这个项目,我可以通过访问立即查看更新的网站。 localhost .

    更新:

    版本设置为2.0,当我回家时,我会检查 IUSR 帐户有足够的权限。我无法想象为什么会这样做,因为发布的文件夹显然默认了它们。

    更新2:

    事件日志中的错误为:

    未能初始化appdomain:/lm/w3svc/1/root

    异常:System.IO.FileLoadException

    消息:无法加载文件或程序集“system.web,version=2.0.0.0,culture=neutral,publickeytoken=b03f5f7f11d50a3a”或其依赖项之一。访问被拒绝。

    未能执行请求,因为ASP.NET进程标识没有对全局程序集缓存的读取权限。错误:0x80070005访问被拒绝。

    我已经给了 MY_MACHINE\ASPNET 帐户“作为操作系统”权限,我仍然得到这个错误。

    更新第3号:

    所以这很有趣…我有XP Media Center版本,所以我忘了我没有安全选项卡来验证权限。

    我决定复制并粘贴整个解决方案到一个新创建的文件夹中,它工作得很好。这表明这是一个权限问题,但与 ASPNET 用户。我将尝试激活“安全”选项卡,并进行第四次(希望是最后一次)更新。

    更新第4号:

    事实证明,当我复制目录时,权限更改为允许所有人访问它。当我检查原始项目目录时, ASPNET 未授予用户目录中的任何权限。

    简单的解决方案是 ASPNET 用户对项目目录的读取权限。

    1 回复  |  直到 14 年前
        1
  •  3
  •   Lewis    15 年前

    完全没有问题。在开发iis5.1的时候,我已经运行了6个月的MVC应用程序。

    首先检查您的网站使用的ASP.NET版本。

    如果这不是问题所在,请检查用于运行网站的用户帐户是否对目录以及其中包含的所有文件和文件夹具有权限,并确保网络服务具有权限。

    看看这个链接-可能会有帮助: http://weblogs.asp.net/bdesmond/archive/2003/09/20/28441.aspx