结构
- apache
- 中心主机
- 虚拟主机
- 基于IP
IP1:80
IP2:80 - 基于端口
IP:80
IP:8080 - 基于域名:
IP:80
主机名不同
www.abc.com
www.def.com
Virtual Hosts
一个完整的配置文件应该具有的选项:
1 |
|
虚拟主机的定义:
1 |
|
httpd -S 检查虚拟主机配置
得先取消中心主机,注释中心主机的DocumentRoot即可;
基于IP的虚拟主机
1 | # vim ../conf.d/virtual.conf |
1 | <VirtualHost 172.17.12.31:80> |
1 | #mkdir -pv /www/{hello.org,hello.com} |
添加主页面
ip addr add 172.17.12.32 dev eth0
如果虚拟主机中设置不同端口,如:
1 | <VirtualHost 172.17.12.31:8080> |
需在主配置文件中:
Listen 8080
基于名称的虚拟主机
1 | NameVirtualHost 172.17.12.33:80 |
基于IP访问,将会返回第一个
添加访问日志和错误日志
1 | CustomLog /var/log/httpd/a.com/access_log combined |
可自定义访问权限
1 | <VirtualHost 172.16.100.2:80> |
强烈建议:
http://httpd.apache.org/docs/2.4/vhosts/examples.html
另外需要着重知道:
httpd 2.4版本:
基于域名的虚拟主机不再需要NameVirtualHost指令;