2009-07-09 48 views
2

我曾经相信MVC应用程序是BIN可部署的,因此可以部署到任何与ASP.net 3.5兼容的服务器。我试图部署到3.5(无SP1)的Windows Server 2003 x64,并且无法正常工作。MVC可以在3.5 IIS6上运行吗? NON SP1

由于我们的应用程序配置,当点击首页时,由于我们的应用程序配置重定向到/帐户/登录视图,我得到以下内容。

该页无法找到

我有三个(加上扩展,我不记得为什么)MVC DLL的一套复制本地,所以他们在bin结束-夹。我出版,然后复制在应用服务器:

  • System.Web.Abstractions.dll
  • System.Web.Mvc.dll程序
  • System.Web.Routing.dll
  • System.Web.Extensions.dll

有谁知道我在做什么错?该应用程序在3.5 SP1的另一台机器上运行,并在开发机器上安装SP1,并安装了MVC。

我已经看了所有我能想到的,保证了权限是否正确等

回答

2

您是否在不起作用的服务器上设置了通配符映射?以"Deploying ASP.NET MVC to IIS 6"为例。您基本上需要将所有请求映射到ASP.NET ISAPI DLL,并告诉IIS不要尝试验证文件是否存在。不知道这是否是你的问题,但它已经在部署中咬了几次。

5

IIS 6不能正确处理.mvc扩展。除其他外,您必须将.mvc映射到ASP.NET处理程序。以下是您的演练:http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx

+0

我们没有使用扩展程序,既没有使用扩展程序,也没有安装MVC(SP1),所以我不希望对环境做任何更改?我不确定我能否在我们的生产环境中进行IIS更改。 – Amethi 2009-07-09 09:57:38

+0

您不必安装MVC,但必须部署MVC程序集。如果你不能对IIS进行更改,恐怕你会遇到麻烦。 – 2009-07-09 10:45:22

+0

当然,虽然我已经部署了这些程序集,但它不能在非sp1机器上运行,但它在sp1机器上运行,并且没有IIS更改。这是我感到困惑的部分。 – Amethi 2009-07-09 13:40:21

0

使用IIS6,您不能执行无扩展名的URL,例如/Account/LogOn。你必须做一些像/Account.aspx/LogOn这样的“.aspx”几乎可以是任意的扩展名,但是你需要这个扩展名。您的路线也需要考虑延期。

0

检查以确保您的网站正在运行的应用程序池已配置为运行ASP .Net 2.0,有时它默认为1.1,这会导致类似于您的问题。

相关问题