在IIS上架设多个虚拟主机时
- 虚拟主机
- 2025-08-01
- 3365
准备工作
- 确认系统版本:确保使用的是支持多站点配置的Windows Server操作系统(如Windows Server 2016/2019等),并且已经安装了IIS角色服务,可以通过“服务器管理器”→“添加角色和功能”来安装或检查是否已安装IIS及相关组件。
- 规划域名解析:为每个虚拟主机准备独立的域名,并在DNS服务器上将这些域名指向服务器的IP地址,若服务器IP为192.168.1.100,则将site1.example.com、site2.example.com等域名都解析到该IP。
创建步骤
打开IIS管理器
按下Win+R键,输入inetmgr打开Internet Information Services (IIS)管理器。
绑定网站
右键点击左侧连接栏中的“站点”,选择“添加网站…”,弹出如下对话框:
| 设置项 | 说明 | 示例值 |
|—————-|———————————————————————-|——————————|
| 网站名称 | 自定义一个易于识别的名称 | MyFirstSite |
| 应用程序池 | 可选择新建专用池或使用默认池 | DefaultAppPool |
| 物理路径 | 指定该站点的实际文件存放位置 | D:WebSitesSite1 |
| IP地址 | 全部未分配/特定IP(若需区分不同IP可在此选择) | 全部未分配 |
| 端口 | HTTP默认80,HTTPS默认443;也可自定义其他端口 | 80 |
| 主机名 | 输入对应域名(不带协议前缀),用于基于名称的虚拟主机识别 | site1.example.com |
重复上述操作添加第二个及后续站点,此时需注意:
- 如果多个站点共用同一IP和端口,必须通过不同的“主机名”进行区分;
- 每个站点应有独立的物理路径以避免内容混淆。
配置应用程序池(可选优化)
对于高流量或特殊需求的站点,建议为其创建专属的应用池:
- 在“应用程序池”节点右键→“添加应用程序池”,设置回收策略、身份凭据等参数;
- 回到网站绑定界面,将新网站的“应用程序池”下拉菜单切换至刚创建的专用池。
SSL证书部署(推荐)
若需启用HTTPS安全访问:
- 从可信CA申请通配符证书或多域名证书;
- 在IIS中双击对应网站的“服务器证书”,完成证书导入;
- 编辑绑定规则,添加443端口并关联已安装的SSL证书。
测试验证
使用浏览器分别访问各域名(如http://site1.example.com、http://site2.example.com),应能正确显示对应站点的内容,可通过F12开发者工具查看网络请求是否路由至正确的后端路径。
相关问题与解答
Q1: 如果两个虚拟主机使用了相同的端口但没有配置主机头会怎样?
A: IIS将无法区分请求目标,导致所有访问都默认跳转到第一个绑定的站点,后续站点无法正常访问,必须为共用IP+端口的组合配置唯一的主机头名称。
Q2: 如何快速排查某个虚拟主机不生效的问题?
A: 按以下顺序检查:①确认DNS解析是否正确(ping域名看是否返回服务器IP);②检查IIS中该站点的状态是否为“已启动”;③查看应用程序池是否正常运行;④核对绑定信息中的主机名与访问用的域名是否完全一致(大小写敏感