前言

前段时间我们完成了七天.NET 8 操作 SQLite 入门到实战的开发系列教程,有不少同学留言问如何将项目发布部署到IIS上面运行。本篇文章我们就一起来讲讲在IIS上部署ASP.NET Core Web API和Blazor Wasm。

前提条件

安装.NET Core SDK

IIS Web服务器安装配置

Internet Information Services (IIS) 是一种灵活、安全且可管理的 Web 服务器,用于托管 Web 应用(包括 ASP.NET Core)。

Windows10 IIS Web服务器安装配置详细教程:https://mp.weixin.qq.com/s/oaqypmpHOTLA9_5sF6-W7Q

安装 .NET Core 托管捆绑包

安装 .NET Core 托管捆绑包(Hosting Bundle)在将 .NET Core 应用程序部署到 IIS 时是一个必要的步骤。托管捆绑包包含了多项关键组件,这些组件确保 .NET Core 应用程序可以在 IIS 上正确运行。

https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-aspnetcore-8.0.7-windows-hosting-bundle-installer

安装 URL 重写模块

重写 URL 必须使用 URL 重写模块。 此模块默认不安装,且不适用于安装为 Web 服务器 (IIS) 角色服务功能。 必须从 IIS 网站下载该模块。

如果没有安装 URL 重写模块,Blazor应用部署IIS会打不开页面:

URL 重写模块下载页:

https://www.iis.net/downloads/microsoft/url-rewrite#additionalDownloads

重新打开IIS,即可看到,安装成功:

七天.NET 8 操作 SQLite 入门到实战详细教程

EasySQLite 项目源码地址

ASP.NET Core Web API发布部署

使用VS2022发布WebApi项目

WebApi项目部署IIS

IIS部署好会后访问地址提示找不到 localhost 的网页:

因为发布后运行的环境属于Production环境。

  • http://localhost:8899/swagger/index.html

在发布成功的项目路径中找到web.config文件,添加如下配置:

在生产环境中展示 Swagger 通常是不推荐的,因为它可能会暴露你的 API 文档,增加安全风险。

你也可以直接修改这个Development环境下的过滤:

<aspNetCore processPath=".\BrowserBookmarks.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess">
  <environmentVariables>
  <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
 </environmentVariables>
</aspNetCore>

重新启用IIS项目,访问成功:

Blazor Wasm发布部署

使用VS2022发布WebUI项目

WebUI项目部署IIS

参考文章

在IIS上部署ASP.NET Core Web API和Blazor Wasm详细教程的更多相关文章

  1. Web Server 在IIS上部署ASP.NET Core项目

    在IIS上部署ASP.NET Core项目 一.配置应用程序池为无托管: 二.安装ASPNETCoreModule:(核心) 下载地址:https://go.microsoft.com/fwlink/ ...

  2. .NET开发框架(五)-IIS上部署ASP.NET Core项目教程

    系列教程:从初学者到架构师的一步步蜕变 本篇经验将和大家介绍如何在IIS上部署ASP.NET Core项目,希望对初学.NET CORE的童靴入门有所帮助! 1.打开VS,创建项目,选择ASP.NET ...

  3. Gitlab CI 自动部署 asp.net core web api 到Docker容器

    为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成. ...

  4. 在 Azure 上部署 Asp.NET Core Web App

    在云计算大行其道的时代,当你要部署一个网站时第一选择肯定是各式各样的云端服务.那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core的网站呢?Azure 的 Web App ...

  5. 【翻译】使用Visual Studio在Azure上部署Asp.Net Core Web应用

    配置运行环境 Install the latest Azure SDK for Visual Studio. The SDK installs Visual Studio if you don't a ...

  6. 在IIS上部署Asp.Net Core 2.2.0

    1. .NET Core与Windows环境 Asp.Net Core 2.2.0 Windows 10 2. 先决条件   下载并安装.Net Core Hosting Bundle. 3. 部署过 ...

  7. IIS 上部署 ASP.NET Core 应用程序

    1.下载 .Net Core Runtime 和 Hosting Bundle 下载地址:https://dotnet.microsoft.com/download/dotnet-core 分别下载 ...

  8. Windows + IIS 环境部署Asp.Net Core App

    环境:Windows Server 2012, IIS 8, Asp.Net Core 1.1. 不少人第一次在IIS中部署Asp.Net Core App的人都会遇到问题,会发现原来的部署方式无法运 ...

  9. List多个字段标识过滤 IIS发布.net core mvc web站点 ASP.NET Core 实战:构建带有版本控制的 API 接口 ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目 Using AutoFac

    List多个字段标识过滤 class Program{  public static void Main(string[] args) { List<T> list = new List& ...

  10. Windows Server 2008 R2 + IIS 环境部署Asp.Net Core App

    Windows + IIS 环境部署Asp.Net Core App   环境:Windows Server 2012, IIS 8, Asp.Net Core 1.1. 不少人第一次在IIS中部署A ...

随机推荐

  1. WPF Canvas在Image 图像上绘图,自适应缩放.

    效果如图 实现了绘图,自适应缩放 核心代码如下 <Window.InputBindings> <KeyBinding Key="Z" Modifiers=&quo ...

  2. 如何从零开始集成DTM Android SDK

    什么是动态标签管理? 动态标签管理(Dynamic Tag Manager,简称"DTM"),可让开发者快速配置更新测量代码及相关代码片段,可以基于Web界面轻松地进行分析.测量代 ...

  3. 使用Xilinx SDK生成设备树

    章节描述: 介绍如何通过SDK生成设备树,以用于arm-Linux环境. 背景 开发环境: Windows:Vivado 2018.3 Linux :ubuntu 16.04 介绍: Device T ...

  4. Ubuntu 使用 SVN 管理 项目

    背景 公司的项目需要在 Linux 环境进行开发,而都是使用 SVN 进行管理的.习惯了 SVN-GUI 的我,需要学习 SVN 的命令行. 准备 安装 SVN sudo apt-get apt-ge ...

  5. NXP i.MX 8M Plus工业开发板规格书(四核ARM Cortex-A53 + 单核ARM Cortex-M7,主频1.6GHz)

      1 评估板简介 创龙科技TLIMX8MP-EVM是一款基于NXP i.MX 8M Plus的四核ARM Cortex-A53 + 单核ARM Cortex-M7异构多核处理器设计的高性能工业评估板 ...

  6. 跟我一起学习和开发动态表单系统-前端用vue、elementui实现方法(3)

    基于 Vue.Element UI 和 Spring Boot + MyBatis 的动态表单系统前端实现解析 在现代企业信息系统中,动态表单是一种非常常见的功能.它可以根据业务需求灵活地调整表单结构 ...

  7. ffmpeg -使用总结

    ffmpeg 使用总结,不定期更新 ---------------------------------------- 1. 将截图合成影片: ffmpeg -i ./shot/%d.tiff -thr ...

  8. SpringBoot 整合Activiti 7.X 从入门到精通

    简介 Activiti 是一个轻量级工作流程和业务流程管理 (BPM) 平台,面向业务人员.开发人员和系统管理员.其核心是一个超快且坚如磐石的 Java BPMN 2 流程引擎.它是开源的,并根据 A ...

  9. 轻松掌握useAsyncData获取异步数据

    title: 轻松掌握useAsyncData获取异步数据 date: 2024/7/12 updated: 2024/7/12 author: cmdragon excerpt: 摘要:本文详细介绍 ...

  10. 转载 | [AcSaveAsType -cad版本代号对应数字 ] & [AutoCAD的DWG文件格式版本代号列表]

    1.  AcSaveAsType -cad版本代号对应数字 doc.SaveAs("D:\AutoCAD\1.dwg", 61) # 将当前文件另存为PyAutoCAD_SaveA ...