我最近创建了一个MVC2应用程序。我无法在运行IIS 5.2的Windows 2003 Server上启动它。我的开发机器是Server 2008,所以没有问题。
我在Server 2003上所做的更改是创建*的通配符脚本映射并指向:c:\ windows \ microsoft.net \ framework \ v4.0.30319 \ aspnet_isapi.dll
我收到了HTTP 403 Forbidden页面。
我创建了一个单独的apppool,并使用.Net 4
运行这是我的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
);
答案 0 :(得分:1)
我试图在IIS 5.1服务器上运行我的MVC2应用程序时遇到类似的问题。我已经失去了很多时间,但最后我才开始工作。
你的Global.asax看起来不错,但还有另外一件事。在IIS服务器上,缺少.mvc文件的映射。您必须添加此项才能使您的应用正常运行。
转到IIS,然后汇总Web sites
并右键点击Default Web Site
并选择Home directory
。现在点击Configure
按钮。单击Add
以添加新的映射扩展。
在Executable
字段中粘贴aspnet_isapi.dll
文件的路径。通常它在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
下。
在Extension
字段中写.mvc
。
在任务中(我可能对此名称有误,因为我没有使用英文版的IIS)标记第二个选项并粘贴GET,HEAD,POST,DEBUG
。
在底部标记2个复选框。
现在您可以点击“确定”按钮保存它。
最后一个提示。如果禁用“确定”按钮,则只需单击带有Executables
的字段,然后应启用该按钮。
修改这是另一个提示。在IIS 5.x下运行MVC应用程序是很成问题的。你必须小心所有的路径。例如,要在SiteMaster
页面中包含jQuery库,您必须使用:
<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>"></script>
希望这对你有用,它为你节省了一些时间:)
答案 1 :(得分:0)
提示“最后一个提示。如果确定按钮被禁用,则只需单击带有可执行文件的字段,然后应该启用它。”
以及
<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>">
</script>