Asp.net mvc 在IIS 5.2上运行MVC2应用程序

Asp.net mvc 在IIS 5.2上运行MVC2应用程序,asp.net-mvc,asp.net-mvc-routing,iis-5,Asp.net Mvc,Asp.net Mvc Routing,Iis 5,我最近创建了一个MVC2应用程序。我无法在运行IIS 5.2的Windows 2003服务器上启动它。我的开发机器是Server2008,所以没有问题 我在Server2003上所做的更改是创建一个*的通配符脚本映射,并将其指向:c:\windows\microsoft.net\framework\v4.0.30319\aspnet\u isapi.dll 我得到一个HTTP 403禁止页面 我创建了一个单独的应用程序池,正在使用.NET4运行它 这是我的global.asax routes.M

我最近创建了一个MVC2应用程序。我无法在运行IIS 5.2的Windows 2003服务器上启动它。我的开发机器是Server2008,所以没有问题

我在Server2003上所做的更改是创建一个*的通配符脚本映射,并将其指向:c:\windows\microsoft.net\framework\v4.0.30319\aspnet\u isapi.dll

我得到一个HTTP 403禁止页面

我创建了一个单独的应用程序池,正在使用.NET4运行它

这是我的global.asax

routes.MapRoute(
            "Default", // Route name
            "{controller}.mvc/{action}/{id}", // URL with parameters
            new { action = "Index", id = "" } // Parameter defaults
        );

        routes.MapRoute(
            "Root", // Route name
            "", // URL with parameters
            new { controller = "Home", action = "Index", id = "" } // Parameter defaults
        );

在IIS 5.1服务器上运行MVC2应用程序时,我遇到了类似的问题。我已经浪费了很多小时,但最后我还是让它工作了

你的Global.asax看起来不错,但还有一件事。IIS服务器上缺少.mvc文件的映射。为了让你的应用程序正常运行,你必须添加这个

转到您的IIS,然后滚动
网站
,右键单击
默认网站
,然后选择
主目录
。现在点击
Configure
按钮。单击
Add
,以添加新的映射扩展

Executable
字段中,将路径粘贴到
aspnet\u isapi.dll
文件。通常它位于
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet\u isapi.dll

Extension
字段中写入
.mvc

在任务中(我可能对此名称有误,因为我没有使用英文版的IIS),标记第二个选项并粘贴
GET、HEAD、POST、DEBUG

在底部标记2个复选框

现在你可以通过点击OK按钮来保存它

最后一个提示。如果“确定”按钮被禁用,则只需单击带有
可执行文件的字段即可,然后应将其启用

编辑这里是另一个提示。在IIS5.x下运行MVC应用程序是很有问题的。你必须小心所有的路径。例如,要在
SiteMaster
页面中包含jQuery库,您必须使用:


<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>"></script>


希望这对您有效,并为您节省了一些时间:)

在IIS 5.1服务器上运行MVC2应用程序时,我遇到了类似的问题。我已经浪费了很多小时,但最后我还是让它工作了

你的Global.asax看起来不错,但还有一件事。IIS服务器上缺少.mvc文件的映射。为了让你的应用程序正常运行,你必须添加这个

转到您的IIS,然后滚动
网站
,右键单击
默认网站
,然后选择
主目录
。现在点击
Configure
按钮。单击
Add
,以添加新的映射扩展

Executable
字段中,将路径粘贴到
aspnet\u isapi.dll
文件。通常它位于
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet\u isapi.dll

Extension
字段中写入
.mvc

在任务中(我可能对此名称有误,因为我没有使用英文版的IIS),标记第二个选项并粘贴
GET、HEAD、POST、DEBUG

在底部标记2个复选框

现在你可以通过点击OK按钮来保存它

最后一个提示。如果“确定”按钮被禁用,则只需单击带有
可执行文件的字段即可,然后应将其启用

编辑这里是另一个提示。在IIS5.x下运行MVC应用程序是很有问题的。你必须小心所有的路径。例如,要在
SiteMaster
页面中包含jQuery库,您必须使用:


<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>"></script>

希望这对您有效,并为您节省了一些时间:)

提示“最后一个提示。如果“确定”按钮被禁用,则只需单击一个包含可执行文件的字段,然后应将其启用。”

也是为了

<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>">
</script>

Tip“结尾处有一个提示。如果“确定”按钮被禁用,则只需单击一个包含可执行文件的字段,然后应将其启用。”

也是为了

<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>">
</script>


对于新的映射扩展,我应该使用v2.0.50727还是v4.0.30319?MVC2应用程序是默认网站下的虚拟目录。默认网站在ASP.NET v2.0.50727下运行,我创建的虚拟目录在v4.0.30319下运行。您建议我创建的映射是默认站点的一部分还是虚拟目录的一部分?这对我仍然不起作用。我创建了.mvc映射扩展。我应该创建多少个和哪些?此外,它们应该在虚拟目录或默认网站下创建吗?我发现您所需要做的就是设置Global.asax,如上面所示,并在虚拟目录中允许*脚本映射(运行MVC应用程序)。显然,在Server2003上安装.NETFramework 4.0时,isapi.dll在IIS/Web服务器扩展中设置为禁止。将其设置为“允许”后,应用程序启动。上面提到的JQuery/IIS5技巧是一个很好的技巧。谢谢。对于新的映射扩展,我应该使用v2.0.50727还是v4.0.30319?MVC2应用程序是默认网站下的虚拟目录。默认网站在ASP.NET v2.0.50727下运行,我创建的虚拟目录在v4.0.30319下运行。您建议我创建的映射是默认站点的一部分还是虚拟目录的一部分?这对我仍然不起作用。我创建了.mvc映射扩展。我应该创建多少个和哪些?此外,它们应该在虚拟目录或默认网站下创建吗?我发现您所需要做的就是设置Global.asax,如上面所示,并在虚拟目录中允许*脚本映射(运行MVC应用程序)。显然,在Server2003上安装.NETFramework 4.0时,isapi.dll在IIS/Web服务器扩展中设置为禁止。将其设置为“允许”后,应用程序启动。上面提到的JQuery/IIS5技巧是一个很好的技巧。谢谢