Apache默认虚拟主机
•一台服务器可以访问多个网站,每个网站都是一个虚拟主机
• 概念:域名(主机名)、DNS、解析域名、hosts
• 任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机
虚拟主机配置
1.修改主配置文件使虚拟主机生效
cd /usr/local/apache2/conf
vim httpd.conf //搜索httpd-vhost,去掉#
2.修改vhosts文件
cp extra/httpd-vhosts.conf extra/httpd-vhosts.conf.bk //对vhosts文件进行备份
vim extra/httpd-vhosts.conf //改为如下
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache2.4/docs/abc.com"
ServerName abc.com //不配置vhost,默认域名为example
ServerAlias www.abc.com www.aaa.com
ErrorLog "logs/abc.com-error_log"
CustomLog "logs/abc.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/usr/local/apache2.4/docs/111.com"
ServerName 111.com
ErrorLog "logs/111.com-error_log"
CustomLog "logs/111.com-access_log" common
</VirtualHost>
3.创建简单的测试文件
cd /usr/local/apache2.4/
mkdir docs
cd docs/
mkdir abc.com
mkdir 111.com
vim abc.com/index.html //写入abc.com即可
vim 111.com/index.html //写入111.com即可
4.对之前的配置进行测试
/usr/local/apache2/bin/apachectl –t //测试语法
/usr/local/apache2/bin/apachectl graceful //重新加载
curl -xlocalhost:80 www.abc.com //显示abc.com中的内容
curl -xlocalhost:80 www.aaa.com //同样显示abc.com中的内容
curl -xlocalhost:80 111.com //显示111.com中的内容