在阿里云 Windows 服务器(如 Windows Server 2016/2019/2022)上配置 IIS(Internet Information Services)环境,主要分为以下几步。整个过程可通过 图形界面(GUI) 或 PowerShell 命令行 完成,推荐新手使用 GUI,生产环境建议结合 PowerShell 实现自动化。
✅ 一、前提条件
- 已成功登录阿里云 ECS Windows 实例(推荐使用管理员账户,如
Administrator) - 确保系统已激活且 Windows Update 最新(可选但推荐)
- 安全组已放行端口:HTTP(80)、HTTPS(443)(若需 SSL)、或自定义端口(如 8080)
- 防火墙(Windows Defender Firewall)允许 IIS 相关入站规则(安装后会自动配置,但需确认)
🔍 检查安全组设置(阿里云控制台)
ECS 控制台 → 实例详情页 → 安全组 → 点击关联的安全组 → 配置规则 → 添加入方向规则:
- 协议类型:
HTTP(80)/HTTPS(443)- 授权对象:
0.0.0.0/0(测试用)或指定 IP 段(生产建议最小权限)
✅ 二、安装 IIS(图形界面方式)
- 打开 服务器管理器(桌面左下角或按
Win + X→ 选择 服务器管理器) - 点击右上角 “添加角色和功能”
- 在向导中依次点击:
- “下一步” → 选择 “基于角色或基于功能的安装” → 下一步
- 选择本机服务器(默认已选)→ 下一步
- 在 “服务器角色” 列表中 ✅ 勾选 “Web 服务器(IIS)”
💡 弹出提示:“添加 Web 服务器所需的功能”,点击 “添加功能” → 继续
- 展开 IIS 节点(可选但推荐):
- 勾选常用功能(根据需求):
- ✅ Web 服务器 → 常见 HTTP 功能(静态内容、默认文档、目录浏览、HTTP 错误、HTTP 重定向等)
- ✅ Web 服务器 → 应用程序开发(✅ ASP.NET 4.8 / ✅ .NET Extensibility 4.8 / ✅ ISAPI 扩展 / ✅ ISAPI 过滤器)
⚠️ 注意:若部署 .NET Core 应用,还需单独安装 .NET Core Hosting Bundle(非 IIS 自带)
- ✅ 管理工具 → IIS 管理控制台(必选)
- 勾选常用功能(根据需求):
- 点击 “下一步” → “安装” → 等待完成(约 1–3 分钟)
- 安装完成后点击 “关闭”
✅ 验证安装:
打开浏览器,访问 http://localhost 或 http://<你的服务器公网IP>
→ 若看到 "IIS 欢迎页面"(蓝色背景 + "You have successfully installed IIS"),说明安装成功 ✅
✅ 三、基础配置(通过 IIS 管理器)
- 打开 IIS 管理器(开始菜单搜索
inetmgr或在服务器管理器 → 工具 → Internet Information Services (IIS) 管理器) - 左侧连接树 → 展开服务器名 → “网站” → 右键 “默认网站” → “管理网站” → “高级设置”(可修改物理路径、绑定等)
- 配置网站绑定(重要!)
- 右键“默认网站” → “编辑绑定…”
- 点击 “添加” → 设置:
- 类型:
http或https - IP 地址:
全部未分配(或指定内网/公网 IP) - 端口:
80(HTTP)或443(HTTPS) - 主机名:留空(泛域名)或填你的域名(如
www.example.com)
- 类型:
- 点击确定保存
- 修改网站根目录(可选)
- 默认路径:
C:inetpubwwwroot - 右键“默认网站” → “基本设置…” → 修改“物理路径”为你自己的项目文件夹(如
D:myweb) - ✅ 确保该文件夹对
IIS_IUSRS和IUSR用户有 读取 & 执行 权限(右键文件夹 → 属性 → 安全 → 编辑 → 添加 → 输入IIS_IUSRS和IUSR→ 勾选“读取&执行”、“列出文件夹内容”、“读取”)
- 默认路径:
✅ 四、启用常用功能(PowerShell 快速命令)
以管理员身份运行 PowerShell,执行以下命令(可跳过 GUI 步骤):
# 启用 IIS 及核心功能(Windows Server 2016+)
Install-WindowsFeature Web-Server, Web-Common-Http, Web-Default-Doc, Web-Dir-Browsing, Web-Http-Errors, Web-Static-Content, Web-Health, Web-Performance, Web-Security, Web-Filtering, Web-App-Dev, Web-Net-Ext45, Web-Asp-Net45, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Mgmt-Console -IncludeAllSubFeature -IncludeManagementTools
# 启用 URL 重写模块(需单独下载安装,或使用 Web Platform Installer)
# 👉 下载地址:https://www.iis.net/downloads/microsoft/url-rewrite
✅ 五、部署你的网站(示例)
- 将网站文件(HTML/ASP.NET 等)复制到
C:inetpubwwwroot或你指定的物理路径 - 若为 ASP.NET 应用:
- 确保已安装对应 .NET Framework(如 4.8)或 .NET Core Runtime + Hosting Bundle
- 在 IIS 中右键“网站” → “管理网站” → “高级设置” → 设置“.NET CLR 版本”(如
v4.0) - 应用程序池 → 找到对应池 → 右键 → “高级设置” → 确认
.NET CLR 版本和托管管道模式(集成/经典)匹配应用要求
- 重启网站:右键网站 → “重新启动”
| ✅ 六、排错常见问题 | 现象 | 可能原因 | 解决方法 |
|---|---|---|---|
无法访问 http://公网IP |
安全组未放行 80 端口 | ✅ 阿里云控制台检查安全组规则 | |
| 显示 403 Forbidden | 权限不足或目录浏览禁用 | ✅ 给 IIS_IUSRS 和 IUSR 添加文件夹读取权限;启用“目录浏览”(IIS → 默认网站 → 右侧“目录浏览” → 启用) |
|
| 显示 500.19 错误 | web.config 语法错误 / 模块缺失 | ✅ 检查 web.config;安装对应模块(如 URL Rewrite、ASP.NET) |
|
| ASP.NET 页面不解析,显示源码 | ASP.NET 未注册或未启用 | ✅ 管理员运行 CMD:%windir%Microsoft.NETFramework64v4.0.30319aspnet_regiis.exe -i(64位系统) |
|
| HTTPS 不生效 | 未绑定 443 端口或无有效证书 | ✅ 绑定时选 https + 上传 PFX 证书;或使用 freessl.cn 申请免费证书 |
✅ 七、进阶建议(生产环境)
- ✅ 使用 Web Deploy 或 FTP 自动化部署
- ✅ 启用 HTTP 重定向(80→443) + 配置 SSL 证书(推荐阿里云免费 DV 证书)
- ✅ 配置 应用程序池:启用“自动回收”、“空闲超时”、“专用内存限制”提升稳定性
- ✅ 日志位置:
C:inetpublogsLogFilesW3SVC1(可配置日志格式与路径) - ✅ 安装 URL Rewrite 模块实现伪静态、反向X_X(如X_X到 Node.js 后端)
📌 附:一键脚本(PowerShell,管理员运行)
# 安装 IIS + ASP.NET 4.8 + 管理工具
Install-WindowsFeature Web-Server, Web-Asp-Net45, Web-Net-Ext45, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Mgmt-Console -IncludeAllSubFeature -IncludeManagementTools
# 启动并设为开机自启
Start-Service W3SVC
Set-Service W3SVC -StartupType Automatic
Write-Host "✅ IIS 安装完成!请访问 http://localhost"
需要我帮你:
- 📄 生成
web.config示例(静态站 / ASP.NET / .NET Core 反向X_X)? - 🔐 配置阿里云免费 SSL 证书并绑定到 IIS?
- 🐳 部署 .NET Core 应用(含 Hosting Bundle + 反向X_X)?
- 🛡️ 加固 IIS 安全(禁用版本头、隐藏 Server 字段、启用 HTTPS 强制等)?
欢迎随时告诉我你的具体需求(比如你用的是什么版本 Windows / 要部署什么类型网站),我可以提供定制化步骤+截图指引+配置文件 👍
云小栈