目录导航
基于IP的虚拟主机配置
基于IP的虚拟主机通过为每个站点分配独立的IP地址实现区分。这种配置要求服务器具备多个网络接口或虚拟IP地址,每个IP对应一个独立的网站。例如,可通过ifconfig
命令临时绑定多个IP到同一网卡(如ens33:1
、ens33:2
),或在Nginx配置文件中为每个server
块指定不同IP的listen
参数。
其优缺点如下:
- 优点:配置直观,适用于需要严格隔离资源的场景
- 缺点:需消耗额外IP地址,部署成本较高,且不适用于IPv4资源紧张的环境
基于域名的虚拟主机配置
基于域名的虚拟主机使用相同IP和端口,通过HTTP请求头中的Host
字段区分不同站点。配置时需要:
- 在DNS服务器中将多个域名解析到同一IP地址
- 在Web服务器(如Apache/Nginx)中为每个
VirtualHost
或server
块配置不同的ServerName
参数 - 创建对应的网站根目录并设置访问权限
这是最常用的虚拟主机类型,适用于商业网站托管场景,具有资源利用率高、管理便捷的特点。
基于端口的虚拟主机配置
基于端口的虚拟主机通过不同TCP端口号区分站点,配置时需要:
- 修改Web服务器的监听端口(如Nginx的
listen 8080
) - 在防火墙开放对应端口
- 用户访问时需显式指定端口号(如
http://example.com:8080
)
此方式适用于内部管理系统或测试环境,但存在以下限制:
- 需用户主动记忆端口号
- 部分企业防火墙会限制非标准端口的访问
三种虚拟主机配置方式的差异主要体现在资源分配和访问方式上:基于IP依赖多网络接口,适合隔离性要求高的场景;基于域名通过DNS解析实现,是外部网站的主流选择;基于端口则通过改变TCP端口提供服务,多用于临时测试或内部系统。实际部署时应根据业务需求选择单一或混合配置模式,但需避免同时使用多种类型导致管理混乱。