有关使用asp.net mvc4应用程序设置iis7的正确教程

时间:2013-10-21 21:16:48

标签: asp.net-mvc iis webdeploy

我的工作有一些专用的Web服务器(Server 2008R2,IIS7)。目前在这里完成的所有事情都是asp.net webforms。对于一个新项目,我想最终将它们介绍给MVC。我在VS2013中创建了一个vanilla MVC应用程序。我走了一些不同的网站,并在我的本地IIS上设置(完整,不是快递)就好了。我可以点击'localhost'并查看我创建的网站。我正在使用Web部署,它运行得很好。

之后我转到了我们的开发服务器。我把它设置为相同(即iis中的新网站,使用适当凭据设置的Web部署等)。从VS发布工作。在开发服务器上,我看到那里的所有文件,但在服务器上的IIS中(通过RDP会话)我无法浏览到它。它确实给我404或503错误,Internet Explorer只是告诉我它找不到地址。

根据我经历过的许多文章,我做了以下工作:

  1. aspnet_regiis.exe -i(32位和64位)
  2. 确保服务器安装了Web Deploy 3.5和Web Deploy工具2.1。
  3. 在我的web.config中添加了一些行(见下文)****。
  4. 确保服务器安装了.net 4.5和mvc。
  5. 毕竟它仍然不会显示我的网站。我错过了什么?我很乐意找到一个教程,让我逐步完成婴儿步骤,但我所看到的只是假设您已经设置了x和y,或者您已经知道IIS就像手背一样。

    <system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
      <remove name="UrlRoutingModule-4.0" />
      <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
    </modules>
    

1 个答案:

答案 0 :(得分:7)

将MVC4应用程序部署到IIS 7.5

  1. 确保您安装了最新的框架。
  2. 转到%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe –ir获取32位或 %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe –ir为64注册asp.net
  3. 为了能够使用IIS7中的IIS7的MVC中的站点,请更新它(http://support.microsoft.com/kb/980368).(Good)
  4. 确保有:

    <modules>
      <remove name="UrlRoutingModule-4.0" />
      <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" 
           preCondition="" />
      <!-- any other modules you want to run in MVC 
           e.g. FormsAuthentication, Roles etc. -->
    </modules>
    
  5. web.config中的

    。 (良好)

    1. 确保有

      <system.webServer>
        <modules runAllManagedModulesForAllRequests="true"/>
      </system.webServer>
      
      web.config中的

      。(不好)

    2. 从自己的经验...使用“好”