2012-02-10 125 views
3

我已经构建了一个MVC 3应用程序,并且安装了IIS 7.5的Web Server 2008。如何将ASP.NET MVC应用程序部署到Windows Server 2008 IIS 7.5上?

在IIS中,我创建了一个新的网站,在其下一个应用程序,然后我部署在应用程序文件夹中的所有我的物理文件:

C:\inetpub\wwwroot\DeveloperToolsPortal\Application 

我也配置了我的应用程序池,使其支持.NET 4我也从asp.net/mvc3网站上下载了这个服务器上的MVC3。

当我浏览使用{0} URL从IIS本申请中,我得到的{1}错误消息:

{0}: http://localhost:85/Application/Home/Index 
{1}: HTTP 500 Internal Server Error 

该网站被配置为使用端口85作为体80已由另一网站。

我还添加了在web.config文件中的以下配置:

<system.webServer> 
     <httpErrors errorMode="Detailed" /> 
    <asp scriptErrorSentToBrowser="true"/> 
    </system.webServer> 
<customErrors mode="Off"/> 

这是为什么收到此错误?我怎么修复它?我在配置应用程序时错过了哪些步骤?

我也试过另外一件事。我添加了一个简单的.htm文件我的申请下,并试图通过IIS开扩它,它给了我下面的错误:

Internet Explorer cannot display the webpage 

我猜有什么问题我的IIS?

+0

服务器事件查看器将在应用程序日志中具有异常详细信息。 – jrummell 2012-02-10 16:02:25

+1

它应该链接到/ Views/Home/Index吗?我认为链接应该是http:// localhost:85/Application/Home – jao 2012-02-10 16:21:15

+0

@jao,你是对的;更新。尽管如此。 – 2012-02-10 16:36:17

回答

0

我使用服务器管理器向我的IIS添加了一些更多功能/服务,并使用aspnet_regiis -ir注册了asp.net,并解决了此错误。

0

出于好奇,端口85从哪里来?尝试解决这个问题(HTTP的默认端口是80)。另外,请查看应用程序错误日志中的错误的其他信息。还有一部分web.config可以设置,以便显示详细的错误消息(不应将其设置为生产)。

<customErrors mode="Off"> 
</customErrors> 
+0

更新,它只是IIS中用于我的网站的端口。我添加了customErrors;没有不同。 – 2012-02-10 16:02:30

2

不要把它在C子目录:\的Inetpub \ wwwroot的

的问题是,默认情况下,在C web.config文件:\的Inetpub \ wwwroot文件,其中将IIS即使您的网站不直接在该目录中,也可以阅读。

您可以在C:\ inetpub中创建另一个文件夹,并将您的网站放到那里。

此外,您可以使用相同的端口运行多个站点,但使用不同的主机标头。

+0

我把它移出来,结果相同。我也放了一个html文件,它显示“Internet Explorer无法显示网页”! – 2012-02-10 16:35:33

+0

尝试更改应用程序池正在使用的身份,并确保它有权访问您的网站的目录以及C:\ Windows \ Temp – Makotosan 2012-02-10 17:48:46

+0

您可以将您的网站放在C:\的子文件夹中。 inetpub \ wwwroot',但你必须小心,因为那里的web.config文件会影响子文件夹。但是,您可以使用特定于应用程序的web.config文件来覆盖它们。 – jrummell 2012-02-13 13:07:30

相关问题