虚拟主机是指在一台服务器上运行多个网站
配置虚拟主机的三种方式
1)基于IP的虚拟主机
2)基于端口的虚拟主机
3)基于名称的虚拟主机
配置虚拟主机的示例
1)基于IP的虚拟主机
在/home/wwwroot目录下分别创建网站目录
[root@localhost ~]# mkdir -p /home/wwwroot/{102,105}
向测试网战中写入内容
[root@localhost ~]# echo “192.168.10.102” > /home/wwwroot/102/index.html
[root@localhost ~]# echo “192.168.10.105” > /home/wwwroot/105/index.html
修改httpd主配置文件
[root@localhost ~]# vim /usr/local/apache/conf/httpd.conf
# 添加IP监听
Listen 192.168.10.102:80
Listen 192.168.10.105:80
修改DocumentRoot的默认路径为网站的发布目录
DocumentRoot "/home/wwwroot"
<Directory "/home/wwwroot">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
# 打开虚拟主机配置路径的注释
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
修改虚拟主机配置文件
[root@localhost ~]# vim /usr/local/apache/conf/extra/httpd-vhosts.conf
清空配置,添加如下内容
<VirtualHost 192.168.10.102>
DocumentRoot /home/wwwroot/102
ServerName www.muyb.com
<Directory /home/wwwroot/102>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 192.168.10.105>
DocumentRoot /home/wwwroot/105
ServerName www.myb.com
<Directory /home/wwwroot/105>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
重启httpd(kill -9),网页验证<br />[http://192.168.10.102/](http://192.168.10.102/)<br /><br />[http://192.168.10.105/](http://192.168.10.102/)<br />
2)基于端口的虚拟主机
修改虚拟主机配置文件
[root@localhost ~]# vim /usr/local/apache/conf/extra/httpd-vhosts.conf
<VirtualHost 192.168.10.102:808>
DocumentRoot /home/wwwroot/102
ServerName www.muyb.com
<Directory /home/wwwroot/102>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 192.168.10.102:8080>
DocumentRoot /home/wwwroot/105
ServerName www.myb.com
<Directory /home/wwwroot/105>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
修改httpd主配置文件<br />[root@localhost ~]# vim /usr/local/apache/conf/httpd.conf
# 添加IP监听端口
Listen 192.168.10.102:808
Listen 192.168.10.102:8080
重启httpd(kill -9),网页验证
http://192.168.10.102:808/
http://192.168.10.102:8080/
3)基于域名的虚拟主机
为虚拟主机提供域名解析
[root@localhost ~]# echo “192.168.10.102 www.muyb.com” >> /etc/hosts
[root@localhost ~]# echo “192.168.10.102 www.myb.com” >> /etc/hosts
[root@localhost ~]# cat /etc/hosts
添加虚拟主机配置
[root@localhost ~]# vim /usr/local/apache/conf/extra/httpd-vhosts.conf
<VirtualHost 192.168.10.102:80>
DocumentRoot /home/wwwroot/102
ServerName www.muyb.com
<Directory /home/wwwroot/102>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 192.168.10.102:80>
DocumentRoot /home/wwwroot/105
ServerName www.myb.com
<Directory /home/wwwroot/105>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
Windows主机添加hosts文件内容:C:\Windows\System32\drivers\etc
192.168.10.102 www.muyb.com
192.168.10.102 www.myb.com
重启httpd(kill -9),网页验证<br />[root@localhost ~]# service httpd restart (若httpd.conf被修改过监听主机的端口,记着改回80)<br />[http://www.muyb.com/](http://www.muyb.com/)<br /><br />[http://www.myb.com/](http://www.muyb.com/)<br />