ASP.NET MVC部署:如何运行应用程序?

时间:2011-08-09 17:27:52

标签: asp.net asp.net-mvc deployment

我在vs web express中写了一个标准的沼泽标准asp.net mvc3应用程序 - 效果很好,所以现在我想将它放在我安装在win2k8 r2盒子上的iis 7服务器上 - 我没有做任何事情除了安装web deploy 2软件包之外的安装。当我在浏览器中访问该站点时,它可以正常运行我欢迎访问IIS7页面。

在vse中,我点击了“发布...”菜单。

输入我的w2k8框的地址进入“默认网站/ MvcApplication1”。检查IIS应用程序。输入主机的管理员用户名密码。

按下发布按钮,它消失了,然后告诉我一切正常。

我在浏览器地址栏中键入什么来运行应用程序?似乎没什么用。我可以在wwwroot目录中看到所有相关文件,并且我已经让每个可以想象的用户完全访问该目录。

如果我输入http://machinename/MvcApplication1,我只需要一个目录列表(在浏览器中)

如果我输入http://machinename/MvcApplication1/Home/Index - 我找不到404文件/目录。

我输入的任何内容都不会启动应用的默认页面。我错过了什么?

6 个答案:

答案 0 :(得分:0)

您的数据库文件可能是只读的......您应该授予IIS用户读/写/修改文件的权限。

此外,我对Visual Studio的发布功能有一些非常讨厌的经验,最好的选择是手动发布您的网站。

答案 1 :(得分:0)

在IIS中,确保将文件夹配置为Web应用程序而不是虚拟目录。

打开IIS管理器并深入查看应用程序级别。如果它有一个“文件夹”图标,则它是一个虚拟目录。如果它是一个Web应用程序,它将有一个类似地球仪+白色矩形的图标。 (纸张?)

如果是虚拟目录,请右键单击它并选择“转换为应用程序”。

答案 2 :(得分:0)

进入IIS,切换到内容视图并尝试从那里浏览到索引页面。你可能只有一条路径问题。

答案 3 :(得分:0)

你应该检查一下GalacticCowboy的建议,并且为了测试,在你网站的根目录中添加一个普通的.aspx页面,说test.aspx,让它呈现'Hello world'消息,并尝试看到它。如果您看不到它,则取决于IIS设置,然后执行GalacticCowboy建议的操作。

如果你可以看到测试页面,那么这意味着缺少连接到MVC路由引擎的东西。首先要检查的是'bin'文件夹是否包含以下文件:

  • Microsoft.Web.Infrastructure
  • System.Web.Abstractions
  • System.Web.Helpers
  • System.Web.Mvc
  • System.Web.Razor
  • System.Web.WebPages
  • System.Web.WebPages.Deployment
  • System.Web.WebPages.Razor

你可能不需要所有这些,不知道你是否使用Razor。

答案 4 :(得分:0)

!)确保您在服务器上安装了mvc 3.

2)确保在服务器上安装了.net 4.0 按照答案ASP.NET MVC on IIS 7.5

上的说明操作

答案 5 :(得分:0)

尝试此网址http://machinename/或签入绑定,您没有指定的端口。尝试将其从默认值更改为83之类的随机内容并尝试http://machinename:83/。或者尝试ping服务器并确保它可以访问。