本篇经验将详细介绍如何发布一个ASP.NET MVC4的应用程序,如何在IIS 7.5上部署MVC应用程序,以及部署后访问网站遇到的常见错误的解决办法。
应用程序发布
1、在我们创建并编写好一个ASP.NET MVC4的应用程序后,右键点击项目名称,选择“发布(B)...”,如下图所示:
2、在弹出的发布Web对话框中,选择配置文件,选择<新建...>,如下图所示:
3、在弹出的新建配置文件对话康中,输入配置文件名称,如下图所示:
4、选择发布方法为“文件系统”,如下图所示:
5、选择目标位置,弹出目标位置对话框,新建或者选择要打开的文件夹,如下图所示:
6、最后点击“发布(P)”,如下图所示:
7、VS 2012 IDE开始发布应用程序,直至发布成功,如下图所示:
IIS 7.5部署MVC应用程序
1、以管理员身份运行IIS,右键网站,选择“添加网站...”,如下图所示:
2、在弹出的添加网站对话框中,输入网站名称、选择应用程序池为ASP.NET v4.0 Classic、物理路径(P)、端口,然后点击“确定”,如下图所示:
3、在浏览器中输入http://localhost:8000/,但是出现了403.14服务器错误,如下图所示:
常见错误及解决办法
1、发布mvc4报错:403.14-Forbidden Web 服务器被配置为不列出此目录的内容。可能在部署ASP.NET MV潮贾篡绐C4.0的时候会发现这个问题,特别是在.NET4.5时,配置文件中不包含这个配置,具体解决方案可以看下面步骤。
2、出现“HTTP 错误 403.14-Forbidden Web服务器被配置为不列出此目录的内容”,如下图所示:
3、提示里面的解决方法是: 如果不希蛑诣噗秀望启用目录浏览,请确保配置了默认文档并且该文件存在。 使用 IIS 管理器启用目录浏览。打开 IIS 管理器。 在“功能”视图中,双击“目录浏览”。 在“目录浏览”页上,在“操作”窗格中单击“启用”。 确认站点或应用程序配置文件中的 configuration/system.webServer/directoryBrowse@enabled 特性被设置为 True。 <system.webServer> <validation validateIntegratedModeConfiguration="false" /> <modules runAllManagedModulesForAllRequests="true" /> <directoryBrowse enabled="false" /> </system.webServer>要设置<modules>节的值为true, 而目录浏览启用或禁用其实都没影响的。如果上述配置后打开的还是文件列表,那还需要配置映射,如下图所示:
4、返回到IIS中,选择发布的Web应用程序->功能视图->处理程序映射,如下图所示:
5、打开IIS的”处理程序映射设置“,在右边的操作栏下有 ”添加脚本映射“,如下图所示:
6、在添加脚本映射对话框中,请求路径(P):*可执行文件(E):C:\Windows\怡觎现喾Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll,如下图所示:
7、点击确定按钮后,弹出添加映射“要允许此ISAPI扩展吗?”的,点击“是”,如下图所示:
8、此时再次刷新之前在浏览器中打开的IIS上MVC应用程序的地址,即可成功访问,如下图所示: