【问题标题】:ASP.NET MVC 3 Deployment 403 Error on Windows Server 2008 R2Windows Server 2008 R2 上的 ASP.NET MVC 3 部署 403 错误
【发布时间】:2011-09-27 14:07:29
【问题描述】:

我正在将 MVC3 应用程序部署到新服务器。该应用程序在开发服务器 (Visual Studio) 以及我的开发机器上的 IIS7 下运行良好,但在服务器上出现 403 错误:

我已完成以下步骤,但现在没有想法。请帮忙!

  • 使用我在开发计算机上使用的相同 xcopy 部署技术,我已将文件部署到服务器并为文件夹添加了以下权限:

IUSR - 读取和执行,列出文件夹内容,读取 IIS_IUSRS - 读取和执行、列出文件夹内容、读取

  • 我还在服务器上安装了 ASP.NET MVC3,因此其他所需的 .dll 位于 GAC 中

  • IIS 已设置,我可以访问基本的 html 文件(例如我在站点路由中放入的 test.html)。

  • 我在服务器管理器中检查了所有角色服务都已安装

  • 已尝试通过从 MVC 安装位置复制文件并放入 bin 目录来进行 bin 部署

C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies

C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies

【问题讨论】:

  • 您是否尝试过使用 Visual Studio 向导部署新创建的应用程序?
  • 服务器上没有安装Visual Studio
  • 我的意思是在你的本地开发机器上创建这个项目,然后部署它。我想了解的是您是否在配置 IIS 时遇到问题,或者您的应用程序有问题。
  • 我在 IIS 下部署了 seperatley,而不是在本地机器上部署了开发服务器。它可以毫无问题地工作。它只是在服务器上不起作用。
  • 嗯,“您无权查看...”让我认为您遇到了这个问题。任何方式都比你的项目好运。

标签: asp.net-mvc asp.net-mvc-3


【解决方案1】:

好的,找到问题了。这是以防其他人有同样的问题:

我使用的服务器必须在 IIS 之前安装了 .NET 4。这意味着 .NET 4 尚未在 IIS 中注册。

我在检查 IIS 配置时注意到了这个问题。单击网站的 .NET 编译图标会引发异常,可能是因为无法编译应用程序。

这导致我看到一个堆栈溢出帖子,将我引导至 hanselman.com

简而言之,我必须在服务器上安装 VS2010,这样我才能使用 Visual Studio 命令提示符,然后在命令行上使用 IIS 注册 .NET 4。

IIS Manager can't configure .NET Compilation on .NET 4 Applications

http://www.hanselman.com/blog/ASPNET4BreakingChangesAndStuffToBeAwareOf.aspx

关键部分:

“我安装了 ASP.NET 4,然后 已安装 IIS。”

如果您安装 VS2010 和/或 .NET 4 首先,然后再安装 IIS,你 需要确保 IIS 配置为 了解 ASP.NET 4 否则 IIS 将不知道如何运行 ASP.NET 4 应用程序。

有一个简单的解决方法

如果您已经处于这种状态,请放弃 到命令行并导航到 FX 安装目录。然后运行 “aspnet_regiis –iru”。

请注意,如果您使用的是 64 位机器, 从 64 位 FX 运行此命令 安装目录 – 不是 32 位 安装目录。

或为了将来参考,请尝试启用 IIS 和 ASP.NET 可扩展性 构建时选择 first 机器或虚拟机。这样当VS 2010 或 .NET 随后是 已安装,安装将 自动检测存在 IIS 并将自动注册。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 2012-06-05
    相关资源
    最近更新 更多