使 .Net Core Web API 部署在 IIS 上以使用 80 端口

问题描述 投票:0回答:2

我使用 .Net Core 3.1 使用 VS 2022 创建了一个 Web API

没什么特别的,这只是我们使用模板和我添加了 Swagger 的天气控制器获得的基本 API。 从 VS -> IIS Express 一切正常。

尝试在我的开发系统上本地部署到 IIS。

没用。

首先是从IIS浏览时的禁止页面:

然后尝试访问 swagger:

从 VS 发布设置

在 IIS 中:

没有更改管理应用程序中的默认值,它们设置为端口 80 用于 Http,443 用于 Https。

出于好奇,我从发布文件夹运行可执行文件,从那里获取 URL。这有效并显示了 swagger 页面。

所以要么是端口,要么是其他我无法弄清楚的东西。 感谢任何线索和指导来完成这项工作。

提前致谢。

asp.net-core-webapi visual-studio-2022 iis-10
2个回答
2
投票

以下是在 IIS 服务器上发布 asp.net core web API 的步骤:

  1. 在 visual studio 中打开一个项目,右键单击它并选择发布选项

  2. 选择文件夹选项并选择目标文件夹并发布

  3. 打开IIS服务器,右键点击服务器名称,选择添加网站

  4. 输入网站名称,选择路径,输入端口号->点击确定

  1. 打开应用程序池,双击你的 web API 应用程序池名称

  2. 从 .net CLR 版本选择无托管代码

  1. 安装 asp.net 核心托管包

  2. 在 Program.cs 文件中添加以下代码:

if (app.Environment.IsDevelopment()|| app.Environment.IsProduction())


0
投票

@Jalpa Panchal,遵循了您的解决方案,但该页面对我不起作用。

© www.soinside.com 2019 - 2024. All rights reserved.