windows server 2022 部署前后端项目

我的小站:Ean7的小站

服务器管理器 中,点击 "添加角色和功能" 后,进入 "添加角色和功能向导"(Add Roles and Features Wizard)。

1. 开始之前

直接点击:

bash 复制代码
下一步

2. 安装类型

选择:

bash 复制代码
基于角色或基于功能的安装
(Role-based or feature-based installation)

然后:

bash 复制代码
下一步

3. 服务器选择

一般选择:

bash 复制代码
从服务器池中选择服务器

然后选中当前服务器。

例如:

bash 复制代码
SERVER01

点击:

bash 复制代码
下一步

4. 服务器角色

找到:

bash 复制代码
Web 服务器(IIS)

勾选。

此时会弹出:

bash 复制代码
添加 Web 服务器(IIS) 所需功能?

点击:

bash 复制代码
添加功能

然后:

bash 复制代码
下一步

5. 功能

默认即可。

直接:

bash 复制代码
下一步

6. Web 服务器角色服务

建议勾选:

bash 复制代码
应用程序开发
 ├─ .NET Extensibility  4.8
 ├─ ASP.NET 4.8
 ├─ ISAPI Extensions
 ├─ ISAPI Filters

如果未来部署 ASP.NET Core,也建议保留这些组件。

然后:

bash 复制代码
下一步

7. 确认

点击:

bash 复制代码
安装

等待完成。


8. 验证 IIS

安装后浏览器访问:

bash 复制代码
http://localhost

或者:

bash 复制代码
http://服务器IP

看到 IIS 默认欢迎页即表示安装成功。


以我的一个vue3前端和后端 ASP.NET 控制台程序为例

一、部署前准备

在开发机打包并拷贝到 Windows Server

例如

D:\demo\

├── backend\

│ ├── service\ ← publish 输出的 exe 和 DLL

└── frontend\ ← IIS 网站根目录(含 web.config)

服务器需安装

组件 说明
.NET 8 Runtime x64 运行后端 exe
IIS 「Web 服务器 (IIS)」角色
URL Rewrite 模块 必须装,否则 web.config 里的 SPA 路由规则会报错

安装 URL Rewrite 后需重启 IIS(或重启服务器)。


二、先启动后端(IIS 之前做)

IIS 只放前端

启动后端

方式 A:命令行测试(先验证)

bash 复制代码
cd /d D:\demo\backend\service



xxxx.exe

方式 B:注册为 Windows 服务(生产推荐)

NSSM 或「任务计划程序 → 系统启动时运行」:

bash 复制代码
nssm install xxx "D:\demo\backend\service\xxx.exe"



nssm set xxx AppDirectory "D:\demo\backend\service"



nssm start xxx

任务计划程序的具体操作,详看下一章节

验证后端

在服务器浏览器或 PowerShell 中访问:

http://localhost:8081/swagger

能打开即表示后端正常。


三、IIS 里具体操作

打开 IIS 管理器

Win + R → 输入 inetmgr → 回车。

添加网站

  1. 左侧右键 「网站」 → 「添加网站...」
  2. 填写:
字段
网站名称 ACSDashboard
应用程序池 默认生成
物理路径 D:\demo\frontend
绑定类型 http
IP 地址 全部未分配(或指定服务器 IP)
端口 3000
主机名 留空

确定即可

确认 web.config 生效

确认 D:\demo\frontend\web.config 存在(打包脚本会自动复制)。

若 IIS 报 500.19 且提示 rewrite 相关错误 → 说明未安装 URL Rewrite,装完后重启 IIS。

防火墙放行

在「高级安全 Windows 防火墙」中:

  • 入站规则 → 新建规则 → 端口 → TCP 3000(前端 IIS)
  • 若客户端需直连后端 API,再放行 TCP 8081(内网可按需限制来源 IP)

添加任务计划程序

对于exe的服务文件,如果需要开机自启,通过添加任务计划程序的方式更方便

步骤 1:打开任务计划程序

  1. Win + S,输入 任务计划程序,点击打开。
  2. 左侧会看到树状菜单,默认打开 任务计划程序库

步骤 2:创建新任务

  1. 在右侧选择 创建任务...(不要选"创建基本任务",因为它功能受限)。
  2. 在弹出的窗口里:
    • 常规选项卡
      • 输入任务名称(比如:开机启动程序)。
      • 可勾选 使用最高权限运行(如果程序需要管理员权限)。
      • 配置为 Windows server2022(或你当前系统)。

步骤 3:设置触发器

  1. 切换到 触发器 标签页 → 点击 新建...
  2. 在"开始任务"下拉菜单中选择 系统启动时
  3. 可选择延迟执行(可选,比如延迟 30 秒启动)。
  4. 点击 确定

步骤 4:设置操作

  1. 切换到 操作 标签页 → 点击 新建...
  2. 动作选择 启动程序
  3. 程序/脚本
    • 填写程序路径,比如:C:\Program Files\MyApp\app.exe
    • 可选:在 起始于(可选) 中填写程序所在目录。
  4. 点击 确定

步骤 5:设置条件(可选)

  • 切换到 条件 标签页:
    • 如果希望仅在接通电源时启动,可勾选 仅在计算机使用交流电时启动
    • 通常开机启动不必勾选其他条件。

步骤 6:设置设置(可选)

  • 设置 标签页可以:
    • 如果任务失败,自动重新启动。
    • 如果任务运行时间过长,停止任务。

步骤 7:保存任务

  1. 点击 确定
  2. 如果提示输入管理员密码或确认权限,请确认。

步骤 8:测试任务

  1. 在任务计划程序库里找到刚建的任务。
  2. 右键 → 运行,看程序是否能正常启动。
  3. 重启电脑,确认程序是否随系统启动。
相关推荐
神经智研社1 小时前
ROS2-5章:节点参数parameter详细讲解
windows·microsoft·机器人环境搭建·win11 ros2 开发环境
诚信定制8394 小时前
PrivaZer逆向解析:深度清理背后的三大隐患
windows
love530love8 小时前
WorkBuddy + 本地 ComfyUI Wan2.1 文生视频实战:从连续报错到成功出片的完整踩坑记录
人工智能·windows·python·音视频·devops·comfyui·mcp
TrisighT9 小时前
Electron 跑鸿蒙 PC 上,这 4 个 API 的行为跟 Windows 完全不一样——但文档一行都没写
windows·electron·harmonyos
qq_3692243317 天前
Windows全系通用!ntdll.dll文件丢失、报错、闪退问题的完整排查与修复教程
windows·dll·dll修复·dll丢失·dll错误
阿米亚波17 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
caimouse17 天前
Reactos 第 10 章 网络操作 — 10.3.1 NIC驱动
网络·windows
初圣魔门首席弟子17 天前
Node.js 详细介绍(知识库版)
windows·qt·node.js·知识库
CHENG-JustDoIt17 天前
AI工具 | 爆火开源项目Odysseus AI 工作台:从项目介绍、部署情况及其使用等多方位分析指南(含详细步骤)
大数据·人工智能·windows·python·ai·开源·github
kingbal17 天前
Windows:flutter环境搭建
windows·flutter