2026-10-24 13:39:52
Apache配置虚拟主机主要有基于IP、基于主机名和基于端口三种方法,具体如下:
基于IP的虚拟主机配置
首先,需为服务器网络接口绑定多个IP地址。例如,使用命令在eth0接口上绑定三个IP:192.168.1.11、192.168.1.12和192.168.1.13。接着,修改hosts文件,将每个IP地址与对应域名(如www.test1.com、www.test2.com、www.test3.com)进行映射。然后,创建虚拟主机存放网页的根目录,如/www/test1、/www/test2、/www/test3,并分别存放网页文件。在httpd.conf文件中,确保包含附加配置文件httpd-vhosts.conf,并在该文件中为每个IP地址配置虚拟主机块,指定ServerName和DocumentRoot,同时设置目录权限。
基于主机名的虚拟主机配置
此方法允许同一IP地址对应多个域名。首先,修改hosts文件,将多个域名(如gm.998gx.com、www.998gx.com、r.998gx.com)映射到同一IP地址。然后,创建虚拟主机存放网页的根目录,并存放网页文件。在httpd.conf文件中包含httpd-vhosts.conf,并在该文件中使用NameVirtualHost指令指定服务器IP地址(或使用*表示所有IP地址)。接着,为每个域名配置虚拟主机块,指定ServerName和DocumentRoot。若需保留原有网站访问,需为默认主机(如localhost)也配置一个虚拟主机块。
基于端口的虚拟主机配置
此方法通过不同端口区分虚拟主机。首先,修改Apache配置文件中的Listen指令,添加多个监听端口(如80和8080)。然后,在httpd-vhosts.conf文件中为每个端口配置虚拟主机块,指定IP地址、端口号、ServerName和DocumentRoot。例如,一个虚拟主机监听192.168.1.10的80端口,另一个监听同一IP的8080端口。