如何将 ASP.NET MVC 应用程序部署到 Windows Server 2008 IIS 7.5 上?

发布于 2025-01-04 00:51:55 字数 924 浏览 1 评论 0原文

我已经构建了一个 MVC 3 应用程序,并且有一个安装了 IIS 7.5 的 Web Server 2008。

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

C:\inetpub\wwwroot\DeveloperToolsPortal\Application 

我还配置了我的应用程序池,以便它支持 .NET 4。我还从该服务器上下载了 MVC3 asp.net/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 有问题?!

I have built an MVC 3 application and I have a Web Server 2008 on which IIS 7.5 is installed.

In IIS, I created a new Site and under which an Application then I deployed all my physical files on that application folder:

C:\inetpub\wwwroot\DeveloperToolsPortal\Application 

I have also configured my Application Pool so that it supports .NET 4. I also downloaded the MVC3 on this server from the asp.net/mvc3 website.

When I browse this application from IIS using the {0} url, I get the {1} error message:

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

The Site was configured to use port 85 as 80 was already taken by another Site.

I've also added the below configurations in the web.config file:

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

Why is this getting this error? How could I fix it? Which step/s have I missed in configuring my application?

I also tried another thing. I added a simple .htm file under my application and tried openning it via IIS and it gave me the below error:

Internet Explorer cannot display the webpage

I'd guess there is something wrong with my IIS?!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

ぽ尐不点ル 2025-01-11 00:51:55

不要将其放在 C:\inetpub\wwwroot 的子目录中

问题是,默认情况下,C:\inetpub\wwwroot 中有一个 web.config 文件,即使您的站点不直接位于 C:\inetpub\wwwroot 中,IIS 也会读取该文件。那个目录。

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

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

Don't put it in a subdirectory of C:\inetpub\wwwroot

The problem is that by default, there's a web.config file in C:\inetpub\wwwroot, which IIS will read from, even though your site is not directly in that directory.

You can create another folder in C:\inetpub and put your site into there.

Also, you can have multiple sites running with the same port, but using different host headers.

小傻瓜 2025-01-11 00:51:55

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

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

Out of curiosity, where did port 85 come from? Try taking that out (the default port for HTTP is 80). Also, look in the application error log for additional info on the error. There is also a section of web.config that you can set so that detailed error messages will be displayed (which should not be set for production).

<customErrors mode="Off">
</customErrors>
回首观望 2025-01-11 00:51:55

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

I added some more features/services to my IIS using the Server Manager and registered asp.net with it using aspnet_regiis -ir and this error is resolved.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文