VS2022(Visual Studio)发布ASP.NET Core Web API应用到Web服务器(IIS)

概述

写完代码后,最常用、简单的发布方式,就是将应用发布到文件夹,然后将publish文件夹复制到要部署的机器上(本地、局域网服务器、云服务器等)。

但是在实际工作中,可能会遇到需要频繁地发布,以使应用保持最新的版本。这时候大量的、费时的、重复的操作就很烦人,那么可以试一下以下的方法。

使用Web部署(Web Deploy)将应用发布到Web服务器(IIS),实现CD(持续集成)。

本文中的软件版本

Web Deploy v3.6(点击下载)
Visual Studio 2022
Internet Information Services (Version 10.0.17763.1)
Windows Server 2019

正文

1.检查服务是否开启

服务器需要安装Web Deploy v3.6,并检查以下两个服务是否开启,其中,Web Management Service 是开启IIS的时候需要开启的,Web 部署代理服务则是安装Web Deploy v3.6后有的。
在这里插入图片描述

在这里插入图片描述

2.配置IIS

1.新建一个文件夹,这是放置要发布的应用的地方。由于IIS的关系,外部用户要通过IIS访问应用,需要将文件夹设置成共享。
在这里插入图片描述
在这里插入图片描述

2.打开IIS管理器,右键添加网站
在这里插入图片描述
3.信息填入下面标记的地方,其中,物理路径是刚刚创建的文件夹,网站名称和端口接下来需要用到。
在这里插入图片描述

3.VS2022 配置Web服务器(IIS)连接

在这里插入图片描述
2.选第一个
在这里插入图片描述
3.填入信息,点击完成。如果出现问题,大概率是 Web Deploy 安装失败。
在这里插入图片描述

4.点击发布

配置好之后点击发布,服务器的文件夹多出了文件,应用能通过IIS访问。IIS提供进程守护,也省了自己发布完之后,需要重新打开应用的功夫。

以上就是VS2022(Visual Studio)发布ASP.NET Core Web API应用到Web服务器(IIS)的简单使用

:)

  • 6
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
IIS部署ASP.NET Core Web API项目及Swagger可以按照以下步骤进行: 1. 首先,我们需要确保已经在本地系统上安装了ASP.NET Core Runtime和ASP.NET Core Hosting Bundle,以便在IIS中运行ASP.NET Core应用程序。 2. 在Visual Studio中,打开你的ASP.NET Core Web API项目。确保项目已经设置为IIS Express作为本地开发服务器。 3. 在项目根目录下的`Properties`文件夹中找到`launchsettings.json`文件,检查并确保该文件中已经配置了`applicationUrl`为`http://localhost:{port}/`,其中`port`为你希望的端口号。 4. 在Visual Studio的顶部菜单中,找到 `Build` -> `Publish {YourProjectName}`,选择发布目标为`Folder`,点击 `Publish`。 5. 在弹出的窗口中选择一个输出文件夹,用于存储发布项目的文件。 6. 打开发布文件夹,在该文件夹中应该有一个名为`web.config`的文件。双击打开该文件,确保其中有以下代码片段: ```xml <aspNetCore processPath="dotnet" arguments=".\{YourProjectName}.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" /> ``` 7. 打开IIS管理器,右键点击`Sites`节点,选择`Add Website`。填写网站名称以及物理路径为刚刚发布项目的目录。 8. 对于应用程序池,选择一个合适的.NET CLR版本和托管管道模式(例如:.NET CLR版本为No Managed Code,托管管道模式为集成)。 9. 在网站的右侧,找到`Authentication`,禁用匿名身份验证并启用Windows身份验证。 10. 重新启动IIS。 11. 现在,我们可以在浏览器中访问`http://localhost:{port}`,应该能够看到你的ASP.NET Core Web API已经在IIS上成功部署。 12. 最后,要在部署的项目中添加Swagger,可以通过NuGet包管理器,添加`Swashbuckle.AspNetCore`包。 13. 在`Startup.cs`文件的`ConfigureServices`方法中,添加以下配置: ```csharp services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "API", Version = "v1" }); }); ``` 14. 在`Startup.cs`文件的`Configure`方法中,添加以下代码: ```csharp app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "API v1"); }); ``` 15. 重新发布并重新启动IIS,现在你的ASP.NET Core Web API应该在IIS部署并且通过Swagger可以浏览和调用你的API接口。 以上就是在IIS部署ASP.NET Core Web API项目及Swagger的步骤。请注意,确保按照正确的顺序执行每一步,并根据自己的项目配置进行调整。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值