速卖通素材
努力

如何在windows server 2022上部署网站?

服务器

在 Windows Server 2022 上部署网站,最常用且官方推荐的方式是使用 IIS (Internet Information Services)。以下是完整的部署流程,涵盖从环境搭建到发布上线的关键步骤:


一、安装 IIS 角色

  1. 打开服务器管理器
    • 点击「开始」→「服务器管理器」。
  2. 添加角色和功能
    • 选择「管理」→「添加角色和功能」。
  3. 按向导操作
    • 选择「基于角色或基于功能的安装」→ 下一步 → 选择当前服务器 → 下一步。
  4. 选择 Web 服务器 (IIS)
    • 勾选 Web 服务器 (IIS) → 展开后确保以下组件被选中(按需):
      • ASP.NET(若使用 .NET Framework 应用)
      • WCF HTTP 激活(如需 WCF 服务)
      • CGI(若需运行 CGI 脚本)
      • 静态内容(必需)
      • HTTP 重定向(可选)
    • 点击「下一步」→「安装」。

💡 提示:若需部署 .NET Core/.NET 5+ 网站,还需单独安装 .NET Runtime 和 aspNetCoreModule


二、配置防火墙规则

允许外部访问网站端口(默认 HTTP:80, HTTPS:443):

# PowerShell(管理员身份运行)
New-NetFirewallRule -DisplayName "Allow HTTP" -Direction Inbound -LocalPort 80 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "Allow HTTPS" -Direction Inbound -LocalPort 443 -Protocol TCP -Action Allow

✅ 建议通过服务器管理器图形界面操作:
服务器管理器 → 本地服务器 → Windows 防火墙 → 高级设置 → 入站规则 → 新建规则


三、创建网站并绑定域名/IP

  1. 打开 IIS 管理器inetmgr 或搜索)。
  2. 右键「网站」→「添加网站」:
    • 网站名称:如 MyApp
    • 物理路径:指向你的项目文件夹(如 C:inetpubwwwrootMyApp
    • 绑定
      • 类型:httphttps
      • IP 地址:*(所有未分配)或指定 IP
      • 端口:80(HTTP)或 443(HTTPS)
      • 主机名:填写域名(如 www.example.com),需在 DNS 中解析到此服务器公网 IP

四、部署应用程序代码

场景 A:静态网站(HTML/CSS/JS)

  • 将文件复制到指定物理路径即可。
  • 测试访问:http://<服务器IP>http://<域名>

场景 B:ASP.NET Web Forms / MVC (.NET Framework)

  • 确保已安装对应版本的 .NET Framework
  • 上传代码至物理路径。
  • 在 IIS 中检查应用程序池:
    • 右键「应用程序池」→「高级设置」→ 确认 .NET CLR 版本 匹配(如 v4.0)。
    • 若为旧版项目,可设为 No Managed Code + Classic Pipeline

场景 C:.NET Core / .NET 5+ 网站

  1. 安装 .NET Runtime(Server 版通常已预装,但需确认版本)。
  2. 安装 ASP.NET Core Module (ANCM)
    # 下载最新安装包:https://download.visualstudio.microsoft.com/download/pr/<latest-version>/...
    # 或使用 winget(Windows 11/Server 2022 支持):
    winget install Microsoft.DotNet.AspNetCore.Runtime
    winget install Microsoft.AspnetCore.Module.IIS
  3. 部署时生成 publish 输出:
    dotnet publish -c Release -o <output-path>
  4. 在 IIS 中创建网站,物理路径指向 publish 目录。
  5. 确保应用程序池使用 无托管代码(.NET Core 由 ANCM 处理)。

五、配置 SSL(HTTPS)

  1. 获取证书
    • 使用 Let’s Encrypt(免费):Certbot for Windows
    • 或购买商业证书(如 DigiCert、GlobalSign)。
  2. 导入证书
    • IIS 管理器 → 服务器节点 → 「服务器证书」→「导入」。
  3. 绑定 HTTPS
    • 网站 →「绑定」→「添加」→ 类型 https → 选择证书 → 确定。

六、验证与监控

  • 浏览器访问 https://your-domain.com
  • 查看日志:
    • IIS 日志:C:inetpublogsLogFiles
    • 事件查看器:eventvwr.msc → Windows 日志 → 应用程序/系统
  • 性能监控:任务管理器 / Performance Monitor(perfmon

附加建议

  • 🔐 安全加固
    • 禁用不必要的模块(如 FTP、SMTP)
    • 启用请求过滤(防 SQL 注入/XSS)
    • 定期更新 IIS 和 .NET 补丁
  • 🔄 自动备份
    • 使用 Task Scheduler 定期备份 C:inetpubwwwroot 和注册表配置。
  • ☁️ 云集成
    • 若部署在 Azure/AWS,可结合 Application Gateway 或 Load Balancer 实现高可用。

需要我针对某类具体技术栈(如 Node.js + Nginx on Windows、PHP、Docker 容器化部署)提供详细方案吗?

未经允许不得转载:轻量云Cloud » 如何在windows server 2022上部署网站?